所以,我已经被这个问题困了一段时间了,它已经造成了很多挫折。我发现很多人在我搜索过的许多论坛页面上都有同样的问题,但没有人给出明确的答案,为什么会抛出这个错误以及如何修复它。
我正在使用swfObject 2.2将背景视频嵌入到我正在工作的页面上,IE7/IE8抛出错误:"对象不支持此属性或方法",由于第48行字符3。打开开发人员工具查看是什么代码导致了这个错误,我发现如下:
function __flash__addCallback (instance, name) {
instance[name] = function () {
return eval(instance.CallFunction("<invoke name=""+name+"" returntype="javascript">" + __flash__argumentsToXML(arguments,0) + "</invoke>"));
}
}
我试着找到我在代码中出错的地方,并注释掉除了:
swfobject.embedSWF('http://localhost/flash/player.swf', 'video_player', '100%', '100%', '9.0.0');
这是swfobject要查找的元素:
<div id="video_player"></div>
更进一步,我使用了一个完全空的.swf文件,以确保错误不是由.swf文件本身抛出的。
我真的很想知道是否有人有使用swfobject的这个错误的经验,如果有什么我可以做的来解决它。
我遇到了同样的问题,我发现了这个博客条目:
Adobe Flash ExternalInterface问题
总结一下,这可能与play()和stop()函数是保留字有关。即使你提到你没有使用ExternalInterface调用,但你有没有尝试重命名这些方法?
我想根据IE8添加一个'坏'词列表。
我们不得不重命名导致同样问题的方法"zoom"one_answers"pan"。还有人说stop是另一个不好用的词。
幸运的是,修复比找到确切的原因更容易:只需重命名您的方法。