1

DIVが表示されたら、JavaScript(Stop JWPlayer)を実行する必要があります。それは約を示しています。ページが完全に読み込まれてから15秒後。

私がこれまでに持っているコード

if (document.getElementById("overlay_div")) { jwplayer().stop(); }

私のコードは、ページの読み込み時にoverlay_divを検索し、しばらくしてからではないと思います(この場合は15秒)

編集:DIVは実際には常に存在していることがわかりますが、この時間間隔の後、display:noneからdisplay:blockに切り替わります。divが表示に変わるスクリプトを実行する方法はありますか:block

Edit2:@elbunueloの助けを借りて、私は自分でこれを解決することができました。誰かがそれを必要とする場合のコードは次のとおりです。

var interval = setInterval(function(){
 if (document.getElementById("overlay_main_div").style.display=="block"){ 
      jwplayer().stop(); 
      clearInterval(interval);
 } }, 1000);
4

3 に答える 3

1

divの直後にスクリプトタグを追加できるため、マークアップが設定されているときに実行されます。

<div id="overlay_div"></div>
<script type="text/javascript">
if (document.getElementById("overlay_div")) { jwplayer().stop(); }
</script>
于 2012-11-16T13:22:12.323 に答える
0

インターバルを使ってみましたか?つまり、1000ミリ秒ごとにdivが存在するかどうかを確認してから、プレーヤーを停止しますか?

var interval = setInterval(function(){
     if (document.getElementById("overlay_div")) { 
          jwplayer().stop(); 
          clearInterval(interval);
     }
}, 1000);
于 2012-11-16T13:16:21.367 に答える
0

div要素の表示方法によって異なります。

-

var times=0;
function divcheck() {
    if (document.getElementById("overlay_div")) { jwplayer().stop(); }
    else if(times<10) { times++; setTimeout(divCheck,1000); }
    }

setTimeout(divCheck,15000);
于 2012-11-16T13:25:14.997 に答える