0

我的 xhtml 中嵌入了一个 .swf 横幅,我需要它在 20 秒后重播,因此如果用户仍在观看该页面,他将再次看到动画。它需要是一个循环或其他东西,以便动画在一遍又一遍完成后再次播放 20 秒。这可以用javascript实现吗?

谢谢!

4

3 回答 3

1

假设你有一个 Flash 播放器的唯一 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 回答