spacer
Yehuda Shiran May 3, 2001
Checking Loaded Percentage of a SWF
Tips: May 2001

Yehuda Shiran, Ph.D.
Doc JavaScript

Developer News
News Flash: Adobe Has iPhone Workaround
Adobe's Flash 10.1 Goes Mobile (Minus iPhone)
A Salute to Visionary CEOs

The FlashSound JavaScript API's PercentLoaded() method returns the percent of the swf loaded into the browser. Values are between 0 and 100. I have yet to come across a SWF ("swiff") that will return a value that is smaller than 100 after embedding it in a Web page, including stream sync tracks.

As a reminder, in order to sonify your page, follow this recipe:

  • Make sure you have the Flash player. 96% of the surfing population already has it. Download.
  • Include flashsound.js in the HEAD section. Download.
  • Create a flashsound object in the HEAD section.
  • Embed your SWF file in the BODY section.
  • Create an anchor tag and set the 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 PercentLoaded() before embedding the tutorial, and one that prints its value after embedding the tutorial SWF. Notice that the value of PercentLoaded() is 0 before embedding, and 100 after it:

Play the Tutorial

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, PercentLoaded() returns " +  
    mySoundObj.PercentLoaded());
  mySoundObj.autostart = false;
  mySoundObj.embedSWF("earsonly.swf");
  alert("After Embedding, PercentLoaded() returns " + 
    mySoundObj.PercentLoaded());
</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 and earsonly.swf:

Download flashsound.js

Download earsonly.swf


People who read this tip also read these tips:

Look for similar tips by subject:

internet.commediabistro.comJusttechjobs.comGraphics.com

Search:

WebMediaBrands Corporate Info

Legal Notices, Licensing, Reprints, Permissions, Privacy Policy.
Advertise | Newsletters | Shopping | E-mail Offers | Freelance Jobs

webref The latest from WebReference.com Browse >
Building a Banking Application Home Page with OOP · Mixing Scripting Languages · Review: phpFox, a Social Networking CMS with all the Bells and Whistles
Sitemap · Experts · Tools · Services · Email a Colleague · Contact FREE Newsletters 
 The latest from internet.com
Enterprise 2.0: Social Networking in the Cloud · BroadSoft Marketplace Hastens Pace of Telephony Innovation · Review: HTC Hero for Sprint