0

xhtmlに.swfバナーを埋め込んでいて、20秒後に再生する必要があるので、ユーザーがまだそのページを見ている場合は、アニメーションが再び表示されます。アニメーションが何度も何度も終了してから20秒後に再び再生されるように、ループか何かである必要があります。これはjavascriptで達成できますか?

ありがとう!

4

3 に答える 3

1

Flash Playerの一意のIDがあるとすると、次のように簡単に実行できます。

var player = document.getElementById("playerID");
var movieLength = 10000; // in ms, change this as needed
var delay = 20000; // in ms

function playMovie() {
    player.play();
    window.setTimeout(playMovie, movieLength + delay);
};

playMovie(); // Assuming it doesn't start automatically.

play()これにより、20秒ごとにプレーヤーの関数が呼び出されます(さらに、映画の長さと遅延)。

于 2012-04-04T19:20:15.490 に答える
1

<object/embed>可能ですが、タグにループする ように指示する方が理にかなっているようです。http://helpx.adobe.com/flash/kb/flash-object-embed-tag-attributes.html

Flashソースにアクセスできない場合(ムービーの最後に20秒の空白を追加するため)、はい、JSが必要になります。

于 2012-04-04T19:25:12.203 に答える
0

映画の長さを秒単位で把握します。その×1000を掛けて、それに20000を加えます。

その番号を取り、ここに入れてください:

var timing = 30000; //whatever the 20000 + the number you found before was, put it here

$(function() {
    window.setInterval(function() {
        $("#myPlayer").get(0).play();
    }, timing);
});
于 2012-04-04T19:37:23.480 に答える