首页 > 代码库 > Flash与IE奇怪的关键字冲突
Flash与IE奇怪的关键字冲突
我有一个小小的swf文件,用来播放声音,加入到HTML后,在Firefox/chrome下播放正常,唯独IE8提示
消息: 对象不支持此属性或方法行: 48字符: 3代码: 0URI: ....
我查看文件中的48,是html标记,不可能有什么冲突。然后又逐个查看js文件,也未发现问题。最后怀疑是swf文件引起ie报错,于是把html中的swf嵌入代码删除,再f5,ie运行正常,因此,必须是AS3的问题。AS3中能与JS冲突的唯有
flash.external.ExternalInterface
方法。查看了敞开给js的3个方法:
ExternalInterface.addCallback(‘play‘, player.play);ExternalInterface.addCallback(‘switch‘, con.change);ExternalInterface.addCallback(‘close‘, player.stop);
swtich的确是js的保留字,遂改之,相应改动后报错依然。
问题在哪呢?play或close是保留字或预留字吗?显然不是。于是又查看AS3中的其它代码,亦未发现问题。
最后抱着试一试的态度,把3个敞开方法一一改掉,最后成
ExternalInterface.addCallback(‘VPlay‘, player.play);ExternalInterface.addCallback(‘VSwitch‘, con.change);ExternalInterface.addCallback(‘VClose‘, player.stop);
Flash导出swf,再运行,结果ie竟然正常了。想不通为何。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。