我的xhtml上嵌入了一个.swf横幅,我需要它在20秒后重播,所以如果用户仍在观看该页面,他将再次看到动画。它需要是一个循环或其他东西,所以动画将在完成一遍又一遍后再次播放20秒。 这可以用javascript实现吗?
谢谢!
答案 0 :(得分: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.
每20秒调用播放器上的play()
功能(加上电影长度和延迟)。
答案 1 :(得分:1)
可以,但是告诉<object/embed>
标记循环似乎更有意义。 http://helpx.adobe.com/flash/kb/flash-object-embed-tag-attributes.html
如果你无法访问Flash源(在电影结尾添加20秒的空白),那么是的,你需要JS。
答案 2 :(得分: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);
});