June 23, 2001 - Hiding and Revealing A Flash Movie
June 23, 2001 Hiding and Revealing A Flash Movie 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.
TSetProperty()
Flash method to set attributes of the Flash movie. One of the properties is VISIBILITY
. You may both set and get this property. The VISIBILITY
property designates whether the movie is visible or invisible on the page. You can set and get Flash properties by their sequence numbers. You get a property like this:
mySwf.TGetProperty(timeline, propertyNumber);
And you set it as follows:
mySwf.TSetProperty(timeline, propertyNumber, value)
The VISIBILITY
property is no. 7
, so you get its value by going:
mySwf.TGetProperty(timeline, 7);
And you set it in a similar way:
mySwf.TSetProperty(timeline, 7, value);
Play the following movie by clicking the Play
link. Get the VISIBILITY
of the movie (true
or false
) by clicking the Get Visibility
link. Make the movie invisible by clicking the Set to Invisible
link. Make it visible again by clicking the Set to Visible
link. Repeat as many times as you want:
Rewind | Play | Get Visibility | Set to Invisible | Set to Visible
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('/', 7)); return false">Get Visibility</A> |
<A href="javascript://" onclick="javascript:mySwf2.TSetProperty('/', 7, 0); return false">Set to Invisible</A> |
<A href="javascript://" onclick="javascript:mySwf2.TSetProperty('/', 7, 1); return false">Set to Visible</A>
<SCRIPT LANGUAGE="JavaScript">
var mySwf2 = Flash_embedSWF("opener.swf", "opener");
</SCRIPT>