zoukankan      html  css  js  c++  java
  • Flash与IE奇怪的关键字冲突

    我有一个小小的swf文件,用来播放声音,加入到HTML后,在Firefox/chrome下播放正常,唯独IE8提示

    消息: 对象不支持此属性或方法
    行: 48
    字符: 3
    代码: 0
    URI: ....

    我查看文件中的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竟然正常了。想不通为何。

  • 相关阅读:
    数组解耦
    curl 命令简单应用
    虾米音乐的一个小功能
    bower使用-es6的前提
    nvm安装和使用
    webpack简单入门
    tp5.0入门笔记
    如何将ts文件转为mp4格式
    c语言介绍
    简单工厂模式
  • 原文地址:https://www.cnblogs.com/sumsung753/p/3847846.html
Copyright © 2011-2022 走看看