May 2, 2001 - Checking if Player is Ready
May 2, 2001 Checking if Player is Ready Tips: May 2001
Yehuda Shiran, Ph.D.
|
isPlayerReady()
method returns true
if the browser recognizes the player associated with the JavaScript object, and the SWF has loaded at least one frame. This method returns false
otherwise. FlashSound API executes this method before all other API method calls, so don't bother using it again. But you do have to use isPlayerReady()
whenever you call a Flash method that is not part of FlashSound JavaScript API.
As a reminder, in order to sonify your page, follow this recipe:
flashsound.js
in the HEAD
section. Download.
HEAD
section.
BODY
section.
onmouseover
event handler to the TGotoAndPlay()
method.
Click the following link to play a Flash stream track that plays a tutorial on FlashSound. We put two alert statements. One that prints the value of isPlayerReady()
before embedding the tutorial, and one that prints its value after embedding the tutorial SWF. Notice that the value of isPlayerReady()
is false
before embedding, and true
after it:
Here is the source code:
<HTML>
<HEAD>
<SCRIPT SRC="flashsound.js"></SCRIPT>
<SCRIPT>
var mySoundObj = new FlashSound();
</SCRIPT>
</HEAD>
<BODY>
<P><A HREF="javascript://"
onmouseover="mySoundObj.TGotoAndPlay('/',1)">Rewind and Play the Tutorial</A>
<A HREF="javascript://"
onmouseover="mySoundObj.TStopPlay('/')">Pause</A>
<A HREF="javascript://"
onmouseover="mySoundObj.TPlay('/')">Continue</A>
<A HREF="javascript://"
onmouseover="alert(mySoundObj.IsPlaying('/'))">Is Playing?</A></P>
<SCRIPT>
alert("Before Embedding, isPlayerReady() returns " +
mySoundObj.isPlayerReady());
mySoundObj.autostart = false;
mySoundObj.embedSWF("earsonly.swf");
alert("After Embedding, isPlayerReady() returns " +
mySoundObj.isPlayerReady());
</SCRIPT>
</BODY>
</HTML>
Notice we assign autostart to false
. The reason is that the stream example here was set to autostart upon embedding. We can override the Flash behavior with JavaScript commands.
Here are links you can use to download flashsound.js
, earsonly.swf
, and scale.swf
: