IE9和FF15 +的jQuery .show()和.hide()问题

时间:2012-11-13 00:59:53

标签: javascript jquery html

我在一个页面上有几个隐藏的DIV,每个DIV包含一个外部Flash播放器。为了隐藏/显示DIV,我使用这个JS:

$('.showSingle').click(function(){

    $(".targetDiv").css("visibility","hidden");
    $(".targetDiv").hide("fast");

    $("#div"+$(this).attr('target')).css("visibility","visible");
    $('#div'+$(this).attr('target')).show('fast');

});

HTML是:

<div id="div'.$x.'" class="targetDiv" style="visibility: hidden">';

//Player code

</div>

Chrome,Opera,IE7 - 一切都很好。 Flash播放器被隐藏,设置为可见时播放,隐藏后停止播放。

IE9(仅在设置了EmulateIE7时有效) - Flash播放器被隐藏,设置为可见时播放,但再次设置为隐藏时不会停止播放。

的FireFox。使用FF12时一切正常,但在FF15 +中隐藏了DIV,但是一旦页面加载,所有的flash播放器都会开始播放,这无论是隐藏还是可见。

修复FF和IE9的任何解决方案?

1 个答案:

答案 0 :(得分:0)

如果他们是你的Flash文件并且使用ActionScript方法暂停它们,最好的方法是通过javascript暂停它们。

您也可以尝试在embed命令中设置autoplay = false。

但是通过javascript控制应该很容易。

以下是 example 如何通过javascript访问Flash