<image>
SVGでロードイベントをリッスンすることは可能ですか?はいの場合、これを行う方法は?
質問する
15047 次
2 に答える
17
はい、可能です。
マークアップ:
<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を参照してください。
于 2012-07-09T10:27:42.500 に答える
8
これはD3を使用して作成されたSVGオブジェクトでは機能しないことがわかりましたが、ここでの答えはうまくいきました。
実際の画像が読み込まれるまで、SVGにプレースホルダー画像を表示するにはどうすればよいですか?
たとえば、これは機能しました:
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'); });
于 2014-03-13T09:51:54.807 に答える