用JavaScript实现利用FLASH嵌入声音(四)

检查SWF转载的百分比 FlashSound JavaScript API的PercentLoaded()方法返回SWF装载到浏览器的百分比。这个数值可以是从0到100的任意值。如果你装载一个SWF(当然包括流同步磁道)到网页的时候这个数值都将小于等于100。

点击如图5所示的连接就可以播放一个Flash流磁道,它是一个FlashSound的教程音乐。对于上面的代码语句我们也只需要修改两条语句。第一条,在嵌入教程音乐的之前打印出PercentLoaded()的数值;第二条,在嵌入教程音乐SWF之后打印这个数值。从结果中你可以发现:在嵌入教程音乐之前,PercentLoaded()的数值为0,而在嵌入教程音乐完毕之后,这个数值为100。

(图5)

以下是具体代码:

 1<html>
 2<head>
 3<script src="flashsound.js"></script>
 4<script>   
 5  
 6var mySoundObj = new FlashSound();   
 7  
 8</script>
 9</head>
10<body>
11<p><a href="javascript://" onmouseover="mySoundObj.TGotoAndPlay('/',1)">播放教程音乐</a>
12<a href="javascript://" onmouseover="mySoundObj.TStopPlay('/')">暂停播放</a>
13<a href="javascript://" onmouseover="mySoundObj.TPlay('/')">继续播放</a>
14<a href="javascript://" onmouseover="alert(mySoundObj.IsPlaying('/'))">是否播放</a></p>
15<script>   
16  
17alert("Before Embedding, PercentLoaded() returns " +   
18  
19mySoundObj.PercentLoaded());   
20  
21mySoundObj.autostart = false;   
22  
23mySoundObj.embedSWF("earsonly.swf");   
24  
25alert("After Embedding, PercentLoaded() returns " +   
26  
27mySoundObj.PercentLoaded());   
28  
29</script>
30</body>
31</html>

验证SWF是否完全装载好

FlashSound JavaScript API的Tloaded方法返回SWF是否已经完全装载到浏览器。这个数值可以为False或者True。当你往网页嵌入你的SWF文件(当然包括流同步磁道)的时候,它返回Fasle值。只能等到装载完毕的时候才返回True值。

点击如图6所示的连接,就将播放一段Flash流磁道,即FlashSound中的教程音乐。当然我们对上面的代码要修改两个地方。第一,在嵌入教程音乐之前打印Tloaded()的数值;第二,在嵌入教程音乐之后打印Tloaded()的数值。此时,从结果中你可以发现:在嵌入教程音乐之前,TLoaded()的数值为False值,而在嵌入教程音乐完毕之后,这个数值为True值。

(图6)

具体修改的代码如下:

 1<html>
 2<head>
 3<script src="flashsound.js"></script>
 4<script>   
 5  
 6var mySoundObj = new FlashSound();   
 7  
 8</script>
 9</head>
10<body>
11<p><a href="javascript://" onmouseover="mySoundObj.TGotoAndPlay('/',1)">播放教程音乐</a>
12<a href="javascript://" onmouseover="mySoundObj.TStopPlay('/')">暂停播放</a>
13<a href="javascript://" onmouseover="mySoundObj.TPlay('/')">继续播放</a>
14<a href="javascript://" onmouseover="alert(mySoundObj.IsPlaying('/'))">是否播放</a></p>
15<script>   
16  
17alert("Before Embedding, TLoaded() returns " +   
18  
19mySoundObj.TLoaded());   
20  
21mySoundObj.autostart = false;   
22  
23mySoundObj.embedSWF("earsonly.swf");   
24  
25alert("After Embedding, TLoaded() returns " +   
26  
27mySoundObj.TLoaded());   
28  
29</script>
30</body>
31</html>
Published At
Categories with 网页设计
comments powered by Disqus