के लिए ईवेंट पर क्लिक करें मैं अपने एमवीसी एप्लिकेशन में jQuery के साथ एसवीजी का उपयोग कर रहा हूं। मैं अपने पृष्ठ पर आयताकारों की एक श्रृंखला खींचता हूं और मैं क्या करना चाहता हूं, प्रत्येक आयताकार के लिए एक क्लिक या माउसओवर ईवेंट संलग्न करता है, कहने के लिए, एक अलर्ट बॉक्स पॉपअप करें। मैं कुछ इस तरह की कोशिश की है, अब तक:एसवीजी आयताकार
$("rect[id='Y6']").attr('onclick', function() { alert("Hello!") });
और
$("rect[id='Y6']").live('click', function() {
alert("Hello!");
};
लेकिन इस घटनाओं की उदासी से कोई भी वास्तव में इस पर नियंत्रण के लिए काम किया। क्या कोई यह जानता है कि यह कैसे करें?
संपादित करें:
मैं जावास्क्रिप्ट कोड मैं नीचे का उपयोग कर रहा जोड़ रहा:
<script type="text/javascript">
/*function resetSize(svg, width, height) {
svg.configure({ width: width || $(svg._container).width(),
height: height || $(svg._container).height()
});
}*/
function onLoad(svg, error) {
//svg.text(10, 20, error || 'Loaded into ' + this.id);
//resetSize(svg, null, null); //'100%', '100%');
}
$(function() {
$('#layout').svg({});
var svg = $('#layout').svg('get');
svg.load('<%= Url.Action("Layout", new{ id = Model.Id }) %>', { //<%= Url.Content("~/media/svg/lion.xml") %>', {
addTo: false,
changeSize: false,
onLoad: onLoad
});
});
$('rect#Y6').click(function(){
alert('hello');
});
</script>
आयतों एक svg तस्वीर से लोड किए गए हैं।
धन्यवाद रॉबर्ट, जैसा कि आपने सुझाव दिया था लिखने की कोशिश करने के बाद, यह काम किया! आपका बहुत बहुत धन्यवाद! – Hallaghan
दूसरों के लिए, मैं मोबाइल क्लिक ईवेंट से जूझ रहा था और यह '$ (दस्तावेज़) .on ('क्लिक टच', '.बटन', फ़ंक्शन() {...}) के साथ काम करता है;' –
त्रिकोण के खिलाफ भेदभाव है। – geotheory