June 27, 2001 - Detecting a Flash Movie's Loading Progress
June 27, 2001 Detecting a Flash Movie's Loading Progress Tips: June 2001
Yehuda Shiran, Ph.D.
|
One of the "tiny" details is embedding the Flash object. The JavaScript file flashcheck2.js
does exactly this, as well as other stuff. For example, it checks whether a Flash player exists (Flash plug-in or ActiveX control), and whether its version is higher than the minimum required by the application.
TGetProperty()
Flash method to get attributes of the Flash movie. One of the properties is FRAMESLOADED
. You may get this property, but you cannot set it. The FRAMESLOADED
property designates the number of frames already loaded on the page. You get a property like this:
mySwf.TGetProperty(timeline, propertyNumber);
The FRAMESLOADED
property is no. 12
, so you get its value by going:
mySwf.TGetProperty(timeline, 12);
Play the following movie by clicking the Play
link. Get the FRAMESLOADED
of the movie by clicking the Get FRAMES LOADED
link. On short movies, you will experience instant loading. On long movies or on poor connection line, you should see a progress in this paremeter, until it hits the maximum number of frames:
Rewind | Play | Get FRAMES LOADED
Here is the source code:
<SCRIPT LANGUAGE="JavaScript" SRC="flashcheck2.js"></SCRIPT>
<A href="javascript://" onclick="javascript:mySwf2.Rewind(); return false">Rewind</A> |
<A href="javascript://" onclick="javascript:mySwf2.Play(); return false">Play</A> |
<A href="javascript://" onclick="javascript:alert(mySwf2.TGetProperty('/', 12)); return false">Get FRAMES LOADED</A>
<SCRIPT LANGUAGE="JavaScript">
var mySwf2 = Flash_embedSWF("opener.swf", "opener");
</SCRIPT>