我的网页上的SWFObject
存在一个小问题。行为是当Flash播放器被另一个标签覆盖或最小化时,它不会开始播放音频,直到标签再次获得焦点并且可见。它使用的是来自http://code.google.com/p/swfobject/的2.1版SWFObject
。为了验证此行为,请加载页面,在5秒内将其最小化,您会注意到beginPlay
中的代码更改了页面的标题。音频开始播放后会发生这种情况,但在浏览器再次获得焦点之前不会启动。以下是复制问题的代码示例:
<html>
<head>
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript" src="audio-player-uncompressed.js"></script>
<script>
function doLoad() {
AudioPlayer.setup("player2.swf", {
width: "350px",
animation: "no",
autostart: "yes",
loop: "yes",
buffer: "5",
initialvolume: 100,
});
AudioPlayer.embed("flashPlayer");
}
function beginPlay(){
setTimeout(function(){
AudioPlayer.embed("flashPlayer", {
soundFile: "test.mp3"
});
document.title = "code after the flash player has executed."
}, 5000);
}
</script>
</head>
<body onload="doLoad();">
This demonstration is to show how either WP Audio Player or SWFObject
does not build the flash player while the browser is minimized.
<br><br>
<a href="javascript:beginPlay();">click this and minimize quickly.</a><br>
<div id="flashPlayer"></div>
</body>
</html>
答案 0 :(得分:1)
这不是特定于SWFObject的问题,通常是由于浏览器处理Flash Player插件;当Flash播放器内容被隐藏或脱离屏幕时,许多浏览器会终止该过程,然后在再次显示SWF时重新初始化该SWF。见http://pipwerks.com/lab/swfobject/hide-swf/2.0/index.html
我不相信除了不隐藏SWF之外,你可以做很多事情。