FlashObject JavaScript库:Flash嵌入、参数配置与快速安装指南

作者:木棉时间:2026-10-30 09:14:46浏览:131

本文详细介绍FlashObject JavaScript库的使用方法,涵盖Flash检测、嵌入及参数配置。通过示例代码演示如何设置Flash基本参数、可选参数及Flashvars变量,并支持通过URL传递参数。此外,还讲解了如何利用FlashObject实现Flash Player的快速安装功能,确保兼容性及用户体验。

FlashObject主要特点

FlashObject的主要特点包括:


1、支持所有Flash内置参数的设置,且操作更加简便。


2、内置Flash Player升级检测功能,并在需要时提示用户升级。


3、完全符合XHTML 1.0 Strict标准验证。


4、能够解决IE升级对Flash的影响,并支持绝大多数浏览器版本。



FlashObject使用方法

使用方法如下:


1、首先下载上述提到的flashobject.js文件,并将其放置于网页目录下。


2、在HTML的<head>标签内引入该JS文件,代码如下:


<script type="text/javascript" src="flashobject.js"></script>


3、在HTML中设置用于插入Flash的代码,例如:


<div id="flashcontent">这里放上你想替换flash的文字。</div>


4、在上述代码之后添加Flash的配置代码,如下所示:


<script type="text/javascript">


var fo = new FlashObject("movie.swf", "mymovie", "200", "100", "7", "#336699");


fo.write("flashcontent");


</script>



FlashObject参数配置

上述FlashObject中的基本参数设置依次为:文件地址、ID、宽度、高度、Flash版本以及背景色。


可选参数包括:


useExpressInstall:快速升级Flash Player,值为true或false;


quality:播放品质,默认为"high";


xiRedirectUrl:指定完成(useExpressInstall)快速升级Player后的定向网址。


redirectUrl:指定Flash Player版本不正确时的定向网址。


detectKey:Flash检测的地址参数,默认为detectflash。例如,若不想检测Flash,可以在网址后加上?detectflash=false。



fo.write("flashcontent");的作用是将Flash内容写入id="flashcontent"的元素中。



Flash参数设置

Flash参数设置:



一般的Flash参数设置为:


<param name="quality" value="high">


<param name="wmode" value="transparent">



而使用FlashObject时的参数设置为:


<script type="text/javascript">


var fo = new FlashObject("movie.swf", "mymovie", "200", "100%", "7", "#336699");


fo.addParam("quality", "low");


fo.addParam("wmode", "transparent");


fo.addParam("salign", "t");


fo.write("flashcontent");


</script>



更多参数请参考Macromedia的详细介绍:http://www.macromedia.com/cfusion/knowledgebase/index.cfm?id=tn_12701



Flashvars变量设置

Flashvars变量设置:



通常通过Flashvars来给Flash条件变量:


<param name="FlashVars" value="variable1=value1&variable2=value2&variable3=value3">



而使用FlashObject后的变量设置为:


<script type="text/javascript">


var fo = new FlashObject("movie.swf", "mymovie", "200", "100", "7", "#336699");


fo.addVariable("variable1", "value1");


fo.addVariable("variable2", "value2");


fo.addVariable("variable3", "value3");


fo.write("flashcontent");


</script>


这样设置后,所有变量将立即传递到Flash的_root上。



此外,FlashObject还提供getQueryParamValue()函数来调用URL网址串的参数。


例如网址:http://www.example.com/page.html?variable1=value1&variable2=value2


你可以通过以下方法将上述参数传递给Flash。


<script type="text/javascript">


var fo = new FlashObject("movie.swf", "mymovie", "200", "100", "7", "#336699");


fo.addVariable("variable1", getQueryParamValue("variable1"));


fo.addVariable("variable2", getQueryParamValue("variable2"));


fo.write("flashcontent");


</script>



同时,getQueryParamValue()还支持从location.hash读取变量。例子:


http://www.slideshowpro.net/demo/demo_default.php




Flash Player快速安装功能

Flash Player的快速安装功能



FlashObject完全支持Flash Player的快速安装功能。通过在Flash的第一帧添加一段AS代码,即可轻松检测用户Flash Player版本并提示更新。expressinstall.as代码如下:



#include "expressinstall.as"


var ExpressInstall = new ExpressInstall();


if (ExpressInstall.needsUpdate) {



var upgradeMsg = attachMovie("upgradeMsg_src", "upgradeMsg", 1);


upgradeMsg._x = Stage.width / 2;


upgradeMsg._y = Stage.height / 2;



upgradeMsg.upgradeBtn.onRelease = function() {


ExpressInstall.init();


}

stop();


}

注意要将上述AS代码放置于主时间轴的第一帧,且该帧上不要放置任何其他内容。具体示例:


http://blog.deconcept.com/flashobject/expressinstall.html


作者最新文章