用JavaScript实现利用FLASH嵌入声音(二)
资源介绍
<HTML>
<HEAD>
<SCRIPT SRC="flashsound.js"></SCRIPT>
<SCRIPT>
var mySoundObj = new FlashSound();
</SCRIPT>
</HEAD>
<BODY>
<A HREF="javascript://"
onmouseover="mySoundObj.TGotoAndPlay(/,1)">
从第1帧开始播放</A>
<A HREF="javascript://"
onmouseover="mySoundObj.TGotoAndPlay(/,100)">
从第1000帧开始播放</A>
<A HREF="javascript://"
onmouseover="mySoundObj.TGotoAndPlay(/,200)">
从第200帧开始播放</A>;
<A HREF="javascript://"
onmouseover="mySoundObj.TStopPlay(/)">
暂停</A><
<SCRIPT>
mySoundObj.autostart = false;
mySoundObj.embedSWF("earsonly.swf");
</SCRIPT>
</BODY>
</HTML>
这里我们将autostart(自动开始播放)设置为Flase。这个例子很好地说明了我们怎样利用JavaScript来重载Flash行为。
停止和播放流
FlashSound的JavaScript API支持一个等价于暂停的方法,即TStopPlay()。这个TStopPlay()方法有一个参数,即timeline(时间线)。我们可以使用“/”(反斜线)来指定主时间线。TStopPlay()可以在指定的时间线上停止向前播放,而不会重新播放。值得指出的是,这个TstopPlay()方法只能停止了设置为流同步的声音的播放,而不能设置为时间或者开始同步的声音的播放。
同样,FlashSound的JavaScript API页支持等价于播放的方法,即TPlay()。这个TPlay()方法也有一个参数,也为时间线。类似地,我们可以使用“/”来指定主时间线。TPlay()可以在被TStopPlay()停止播放的帧处的时间线(传递给TPlay()的参数)上开始播放,或者从第一帧开始播放。这个TPlay()方法也只能开始播放被设置为流同步的声音,也不能开始播放被设置为时间同步或者开始同步的声音。
如图2所示的三个连接是连到典型的磁带录音机控制面板上。第一个连接是利用TGotoAndPlay()重新播放,第二个连接是利用TStopPlay()来暂停播放,而第三个连接是利用Tplay来继续播放被暂停在某处的声音。详细的代码如下: <HTML>
<HEAD>
<SCRIPT SRC="flashsound.js"></SCRIPT>
<SCRIPT>
var mySoundObj = new FlashSound();
</SCRIPT>
</HEAD>
<BODY>
<A HREF="javascript://" onm ouseover="mySoundObj.TGotoAndPlay(/,1)">
重新开始播放</A>
<A HREF="javascript://" onm ouseover="mySoundObj.TStopPlay(/)">
暂停播放</A>
<A HREF="javascript://" onm ouseover="mySoundObj.TPlay(/)">
继续播放</A>
<SCRIPT>
mySoundObj.autostart = false;
mySoundObj.embedSWF("earsonly.swf");
</SCRIPT>
</BODY>
</HTML>