IE SCRIPT16389错误与Flash ExternalInterface回调和JQuery滑块


IE SCRIPT16389 Error with Flash ExternalInterface Callback and JQuery Slider

我有一个非常奇怪的问题与Internet Explorer,在我的网站上,我使用JQuery AnythingSlider插件来显示一些视频。每当有人滑到下一个视频时,我都有一个flash回叫:

import flash.external.ExternalInterface;
ExternalInterface.addCallback("movie_pause",player.pause);

:

var obj = swfobject.getObjectById($(this).attr('id'));
if(obj){
    obj.movie_pause(); //This is where the error takes place
}

现在奇怪的是,当页面第一次加载时,一切都运行良好。然而,刷新后,或只是随机滑动几次后,IE开始抛出错误SCRIPT16389:未指定的错误,并指向上述行。但如果我用IE调试,它反而指向:

function __flash_addCallback(instance, name) {
    instance[name] = function() {
        return eval(instance.CallFunction("<invoke name='""+name+"'" returntype='"javascript'">" + __flash__argumentsToXML(arguments,0) + "</invoke>"));
    }
}

我使用swfObject:

嵌入我的视频
<object id="testimonial_{testimonials_ID}" 
    classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="720" height="480">
    <param name="movie" value="<?php echo content_url();?>videos/player/agflvplayer.swf">
    <param name=FlashVars value="id=testimonial_{testimonials_ID}&flvurl=<?php 
    echo content_url();?>{testimonials_url}&player_skin=<?php 
    echo content_url();?>videos/player/SkinOverAllNoCaption.swf&volume=0">
    <param name="wmode" value="transparent">
    <!--[if !IE]>-->
    <object type="application/x-shockwave-flash" data="<?php echo content_url();?>videos/player/agflvplayer.swf" width="720" height="480">
        <param name=FlashVars value="id=testimonial_{testimonials_ID}&flvurl=<?php 
        echo content_url();?>{testimonials_url}&player_skin=<?php 
        echo content_url();?>videos/player/SkinOverAllNoCaption.swf&volume=0">
        <param name="wmode" value="transparent">
        <!--<![endif]-->
        <p>Alternative content</p>
        <!--[if !IE]>-->
    </object>
    <!--<![endif]-->
</object>

你可以看看这个问题http://people.oregonstate.edu/~egliju/agtools/welcome/test/'>http://people.oregonstate.edu/~egliju/agtools/welcome/test。我能找到的最近的问题是页面刷新后ExternalInterface在IE中不工作,但没有答案(他们只是建议使用swfobject,我是)。

好吧,看来我已经找到了解决这个问题的方法。这似乎与ie缓存flash播放器有关,出于某种原因,这导致了问题。所以我通过改变电影参数url来欺骗它,让它每次都重新加载自己。

<param name="movie" value="player/player.swf?no_cache=<?php echo rand();?>">