我尝试在SVG之后做一些事情(由<object>:引用)
<!--[if !IE]>-->
<object data="file.svg" type="image/svg+xml" id="image-1" width="760" height="730" > <!--<![endif]-->
<!--[if lt IE 9]>
<object src="file.svg" classid="image/svg+xml" width="200" height="200" id="image-1" width="760" height="730"> <![endif]-->
<!--[if gte IE 9]>
<object data="file.svg" type="image/svg+xml" id="image-1" width="760" height="730">
<![endif]-->
</object>已加载:
a = document.getElementById("image-1");
a.addEventListener("load",function(){
//some stuff
},false);这在具有原生SVG支持的浏览器中工作得很好。然而,当SVG使用svgweb的flash支持时,我无法触发load事件。是我搞砸了什么还是这是意料之中的?
当闪回准备就绪时,我可以做什么来触发事件?我需要这个来动态隐藏/显示<path>%s。
发布于 2012-07-09 16:37:14
您是否尝试过监听'SVGLoad‘事件?
有关方法,请参阅用于SVGWeb的the user manual。
发布于 2013-02-13 00:33:58
我很难让SVG事件在嵌入了SVGWeb文件的不同浏览器中一致地触发。我发现这个方法适用于任何地方,也适用于jQuery:
在SVG文件的末尾,在</svg>标记之前:
<script type="text/javascript"><![CDATA[
window.parent.SVGInit();
]]></script>然后在SVG嵌入上方的HTML文件中:
<script>
function SVGInit() {
$(document).ready(function(){
// SVG is loaded and ready.
});
}
</script>发布于 2012-07-23 18:26:57
您使用的是哪个版本的svgWeb?尝试更新到上面的Lurker。以前的版本可能会覆盖jquery的加载处理程序。另外,尝试使用以下语法:
mysvg.load = mysvg.onsvgload = function(){
//Handler
}https://stackoverflow.com/questions/11377473
复制相似问题