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竟然正常了。想不通为何。

  • 相关阅读:
    问题 D: 错误探测
    问题 C: 计算矩阵边缘元素之和
    同行列对角线的格子
    矩形交换行
    问题 R: 鸡尾酒疗法
    问题 : 字符串p型编码
    循环结构 整数的个数
    字符串c++字符环
    ISBN码字符串c++
    Uva
  • 原文地址:https://www.cnblogs.com/sumsung753/p/3847846.html
Copyright © 2011-2022 走看看