首页 > 开发 > Javascript > 正文

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

2020-02-07 10:59:54
字体:
来源:转载
供稿:网友
    检查SWF转载的百分比 FlashSound javascript API的PercentLoaded()方法返回SWF装载到浏览器的百分比。这个数值可以是从0到100的任意值。如果你装载一个SWF(当然包括流同步磁道)到网页的时候这个数值都将小于等于100。

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



(图5)

以下是具体代码:

<HTML>

<HEAD>

<SCRIPT SRC="flashsound.js"></SCRIPT>

<SCRIPT>

var mySoundObj = new FlashSound();

</SCRIPT>

</HEAD>

<BODY>

<P><A HREF="javascript://"

onmouseover="mySoundObj.TGotoAndPlay('/',1)">播放教程音乐</A>

<A HREF="javascript://"

onmouseover="mySoundObj.TStopPlay('/')">暂停播放</A>

<A HREF="javascript://"

onmouseover="mySoundObj.TPlay('/')">继续播放</A>

<A HREF="javascript://"

onmouseover="alert(mySoundObj.IsPlaying('/'))">是否播放</A></P>

<SCRIPT>

alert("Before Embedding, PercentLoaded() returns " +

mySoundObj.PercentLoaded());

mySoundObj.autostart = false;

mySoundObj.embedSWF("earsonly.swf");

alert("After Embedding, PercentLoaded() returns " +

mySoundObj.PercentLoaded());

</SCRIPT>

</BODY>

</HTML>

验证SWF是否完全装载好

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

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



(图6)

具体修改的代码如下:

<HTML>

<HEAD>

<SCRIPT SRC="flashsound.js"></SCRIPT>

<SCRIPT>

var mySoundObj = new FlashSound();

</SCRIPT>

</HEAD>

<BODY>

<P><A HREF="javascript://"

onmouseover="mySoundObj.TGotoAndPlay('/',1)">播放教程音乐</A>

<A HREF="javascript://"

onmouseover="mySoundObj.TStopPlay('/')">暂停播放</A>

<A HREF="javascript://"

onmouseover="mySoundObj.TPlay('/')">继续播放</A>

<A HREF="javascript://"

onmouseover="alert(mySoundObj.IsPlaying('/'))">是否播放</A></P>

<SCRIPT>

alert("Before Embedding, TLoaded() returns " +

mySoundObj.TLoaded());

mySoundObj.autostart = false;

mySoundObj.embedSWF("earsonly.swf");

alert("After Embedding, TLoaded() returns " +

mySoundObj.TLoaded());

</SCRIPT>

</BODY>

</HTML>
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表