क्या एसवीजी में <image>
लोड इवेंट सुनना संभव है? यदि हां, तो यह कैसे करें?क्या एसवीजी में छवि लोड इवेंट सुनना संभव है?
उत्तर
हाँ यह संभव है।
मार्कअप में:
<image xlink:href="example.png" width="10" height="10"
onload="alert('loaded')"/>
jsfiddle देखें।
स्क्रिप्ट में:
<script>
var img = document.createElementNS("http://www.w3.org/2000/svg", "image");
img.addEventListener('load', function() { alert('loaded'); });
// or alternatively:
// img.onload = function() { alert('loaded'); }
img.width.baseVal.value = 100;
img.height.baseVal.value = 100;
img.href.baseVal = "example.png";
</script>
jsfiddle देखें।
मैं इस काम को पाने में असमर्थ हूं, न तो मार्कअप और न ही स्क्रिप्ट के साथ; क्या आप एक उदाहरण प्रदान करने में सक्षम हैं? – Richard
http://www.w3.org/TR/SVG/interact.html#SVGEvents, क्या आपने संदर्भित बाहरी स्रोतों की आवश्यकता है, जैसा कि लिंक का उल्लेख किया गया है? – neo
@neo: बाहरी स्रोत स्रोत आवश्यक विशेषता यहां आवश्यक नहीं है। –
मैंने पाया कि यह डी 3 का उपयोग कर बनाया एसवीजी वस्तु के लिए काम नहीं होगा, लेकिन इस सवाल का जवाब यहाँ महान काम किया:
How can I display a placeholder image in my SVG until the real image is loaded?
उदाहरण के लिए इस काम किया:
var img = innerG.append("image")
.attr('onload', function() {
console.log('loaded');
})
.attr("xlink:href", src)
.attr("width", size)
.attr("height", size);
लेकिन यह नहीं था कार्य:
var img = innerG.append("image")
.attr("xlink:href", src)
.attr("width", size)
.attr("height", size);
img.addEventListener('load', function() { console.log('loaded'); });
लेकिन विशेषता का नाम HTML के रूप में है: 'ऑनलोड'। लेकिन घटना का नाम अलग है: 'एसवीजी लोड' 'लोड' नहीं। Http://www.w3.org/TR/SVG/interact.html#LoadEvent देखें – mems
क्या "वास्तविक" का मतलब "संभव" जैसा ही है? – JJJ
हां, वास्तविक == संभव – Rustam
और से आपका मतलब
है? –
JJJ