首先附张图,以直观说明错误的现象:(ie7、8)
在开发过程中,发现ie7,8下会报js错误,调试后发现是flash的问题,一直没有头绪,后来google了下,发现原来是ExternalInterface回调触发的bug。
原因:在flash里有添加'play'作为ExternalInterface回调,代码如下:
ExternalInterface.addCallback(“play”, playFunc);
而ie7,8或者某些FireFox版本不能用某些词语([play, stop, pause, length])作为接口回调,打算把这些词语作为保留字,阻止你使用。
解决方法:避免使用[play, stop, pause, length]作为Flash接口回调,暂时只了解这些词语,如果有其他人了解,欢迎在留言里补充,最安全的办法是
所有的回调接口全部加上前缀。
参考链接: flash - Problem occurring in __flash__addCallback - Stack Overflow
flash - Problem occurring in __flash__addCallback - Stack Overflow