我想在加载 SVG 图像后对其进行操作snap.svg
。不幸的是,加载事件的回调从未被调用。如何向 svg 对象注册加载事件?
我已经创建了这个最小的例子我的问题。
HTML:
<object data="http://upload.wikimedia.org/wikipedia/en/8/80/Wikipedia-logo-v2.svg" type="image/svg+xml" id="animation" />
JavaScript:
alert('loading');
$('#animation').on('load', function() {
alert('loaded');
});
从这篇文章jQuery SVG-对象标签加载事件
看起来 jQuery 只是阻止将“load”事件绑定到
非图像或文档元素,所以我只使用“官方”
addEventListener() 函数...
也不确定情况是否仍然如此,但您的问题主要是在 jsfiddle 中,您在文档“已加载”而不是文档“就绪”上执行代码。文档加载意味着在执行代码之前加载所有资源,因此 svg 图像已经加载。
与这个更新的 jsfiddle 配合得很好http://jsfiddle.net/47jSh/2/
alert('loading');
$('#animation')[0].addEventListener('load', function() {
alert("loaded");
}, true);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)