【发布时间】:2014-10-13 19:16:53
【问题描述】:
我正在使用beginElement() 在我的网络应用程序中启动 SVG 动画:
document.getElementById("item").beginElement();
但这会在 IE9 及更高版本(doesn't support it)中导致以下错误:
Object doesn't support property or method 'beginElement'
我不介意动画在 IE9 中不起作用,但我需要防止错误发生。如何设置检查以使 beginElement() 仅在浏览器支持时才被调用?例如:
if (hasSupport) {
document.getElementById("item").beginElement();
}
我尝试了一种检测技术like this:
return !!document.getElementById("item").beginElement();
但这总是返回false,即使在我知道支持它的浏览器中(如Firefox)。
我也研究过使用Modernizr,但它没有测试beginElement()。
【问题讨论】:
-
Modernizr 对SMIL 进行了测试,您可以使用它,尽管它更通用一些。但是,如果 SMIL 也不支持,那么检查
beginElement没有任何意义。
标签: animation svg internet-explorer-9 modernizr feature-detection