在显示之前加载swf

时间:2012-08-25 18:02:34

标签: php javascript flash

基本上,我有一个swf文件设置为按下按钮10秒后播放。当swf被弹出时,它会在swf加载时显示白色屏幕。我想要贬低那个。这是我现在使用的javascript,在按钮按下10秒后显示swf:

<script type="text/javascript">
    function flash() {
 $('#stage').html('<OBJECT style="z-index:2; position:absolute; top:20%; left:15%;" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" WIDTH="90%" HEIGHT="70%" id="rice" ALIGN=""><PARAM NAME=movie VALUE="rice.swf"><PARAM NAME=quality VALUE=low><EMBED src="rice.swf" quality=low bgcolor=#EEEEEE WIDTH="90%" HEIGHT="90%" NAME="rice" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED> </OBJECT>');
}
</script>

我正在使用setTimout作为等待时间。这是有效的,但正如我所说,它显示白色(好吧,我将bgcolor更改为EEEEEE以便颜色)&#34; loading&#34;屏幕。我试过把&#34;显示:无&#34;在div,object标签和swf所在的embed标签中,然后使用javascript函数更改&#34; display:none&#34;到&#34;显示:块&#34;当按下按钮时。我知道JS函数有效,因为我将它用于页面上的其他元素。这是JS:

<script type="text/javascript">
    function showStuff(id) {
        document.getElementById(id).style.display = 'block';
}
</script>

如果我这样做(隐藏然后显示swf)我需要停止它的声音。当它被隐藏时我不需要暂停swf因为它是一个短的.5秒循环动画。我希望有人可以提供帮助,谢谢。

1 个答案:

答案 0 :(得分:1)

您应该使用jquery库来访问show()和hide()函数:) 像这样...

function showStuff(id) {
     $('#' + id).show();
}

还...在文档准备好时隐藏它...

$(document).ready(function(){ 
    $('#YourId').hide(); 
}); 

至于停止声音,你应该去这里: Stop music from in flash from javascript event

希望这有助于:)