0

基本的に、ボタンを押してから 10 秒後に再生するように設定された swf ファイルがあります。swf がポップアップするはずの場合、swf の読み込み中に白い画面が表示されます。それを解消したいと思います。これは、ボタンを押してから 10 秒後に swf を表示するために現在使用している JavaScript です。

<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に変更しました)「ロード」画面。div、objectタグ、swfのあるembedタグに「display:none」を入れてみたのですが、JavaScript関数を使ってボタンを押したときに「display:none」を「display:block」に変更してみました. ページ上の他の要素に使用しているため、その JS 関数が機能することは事実です。そのJSは次のとおりです。

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

そして、それを行う場合(swfを非表示にしてから表示する)、その音を止める必要があります。swf は 0.5 秒の短いループ アニメーションであるため、非表示になっている間は swf を一時停止する必要はありません。誰かが助けてくれることを願っています、ありがとう。

4

1 に答える 1

1

show() および hide() 関数にアクセスするには、 jqueryライブラリを使用する必要があります :) そのように...

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

また...ドキュメントの準備ができたら非表示にするには...

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

サウンドを停止するには、ここに行く必要があります: Javascript イベントからのフラッシュで音楽を停止します。

これが役に立ったことを願っています:)

于 2012-08-25T18:10:19.297 に答える