FlashObject详解:Flash的检测和嵌入Javascript脚本

javascript|object|脚本|详解

可能很多人并不太了解FlashObject,特意把官网翻译整理了下。(E文有限,如有错误,敬请指正。)

官方地址:http://blog.deconcept.com/flashobject/
目前最新版本:FlashObject 1.3
下载地址:http://blog.deconcept.com/flashobject/flashobject1-3.zip

特点:
1、支持所有flash内置参数设置。且设置更简单方便。
2、内嵌flash player升级探测器,并提示升级。
3、完全通过XHTML 1.0 Strict验证。
4、可以解决IE升级对flash的影响,支持绝大部分浏览器版本。

使用方法:
1、首先下载上面的flashobject.js文件,放到你的网页目录下。
2、调用js文件,在<head></head>中加入:
<script type="text/javascript" src="flashobject.js"></script>
3、设置需要插入flash的htm代码:
<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中的基本参数设置依次为:文件地址,ID,宽度,高度,flash版本,背景色。
可选参数有:
useExpressInstall: 快速升级flash player 值为ture/false;
quality:播放品质,默认为"high";
xiRedirectUrl:指定完成(useExpressInstall)快速升级player后的定向网址。
redirectUrl:指定flash player版本不正确的定向网址。
detectKey:flash检测的地址参数,默认为detectflash。如:要不检测flash,可以在网址后面加上?detectflash=false。

fo.write("flashcontent");是把flash内容写到id="flashcontent"里。

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来给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的快速安装功能

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

时间: 2024-11-30 11:58:44

FlashObject详解:Flash的检测和嵌入Javascript脚本的相关文章

FlashObject之Flash的检测和嵌入Javascript脚本_Flash As

其特点:1.支持所有flash内置参数设置.且设置更简单方便.2.内嵌flash player升级探测器,并提示升级.3.完全通过XHTML 1.0 Strict验证.4.可以解决IE升级对flash的影响,支持绝大部分浏览器版本. 使用方法:1.首先下载上面的flashobject.js文件,放到你的网页目录下.2.调用js文件,在<head></head>中加入:<script type="text/javascript" src="flas

实例详解flash中实例的属性

详解 原创教程,转载请注明出处:网页教学网 我们在用FLASH制作动画时,总是用到符号(元件或组件),类型有三种分别为:MC.BUTTON.GRAPHIC.当我们按F8键时就会把你选中的对象转换为符号了,但是FLASH的精华在于实现交互,也就是我们必须要学习ACTION.当我们从库中把符号拖到场景中来,那么这时这个符号就叫做实例.通常我们在使用ACTION时,一些指令都是调用MC的实例名字的,而GRAPHIC的实例是不能调用的. 当我们在调用MC之前首先要给MC设置一个实例名,在Action指令

详解a href=#与 a href=javascript:void(0) 的区别

 a href="#"> 点击链接后,页面会向上滚到页首,# 默认锚点为 #TOP <a href="javascript:void(0)" onClick="window.open()"> 点击链接后,页面不动,只打开链接 <a href="#" onclick="javascript:return false;"> 作用同上,不同浏览器会有差异. 点击链接后,不想使页面滚到

图文详解Heap Sort堆排序算法及JavaScript的代码实现_基础知识

1. 不得不说说二叉树要了解堆首先得了解一下二叉树,在计算机科学中,二叉树是每个节点最多有两个子树的树结构.通常子树被称作"左子树"(left subtree)和"右子树"(right subtree).二叉树常被用于实现二叉查找树和二叉堆. 二叉树的每个结点至多只有二棵子树(不存在度大于 2 的结点),二叉树的子树有左右之分,次序不能颠倒.二叉树的第 i 层至多有 2i - 1 个结点:深度为 k 的二叉树至多有 2k - 1 个结点:对任何一棵二叉树 T,如果其

详解SQL死锁检测的方法_MsSql

sql server中的死锁是指进程之间互相永久阻塞的状态,下文就将为您介绍如何检测sql server死锁,希望对您有所帮助. 死锁(deadlock)指进程之间互相永久阻塞的状态,SQL可以检测到死锁,并选择终止其中一个事务以干预sql server死锁状态. 第一步:首先创建两个测试表,表goods_sort和goods 表goods_sort:创建并写入测试数据 IF EXISTS(SELECT name FROM sysobjects WHERE name='goods_sort' A

详解SQL死锁检测的方法

sql server中的死锁是指进程之间互相永久阻塞的状态,下文就将为您介绍如何检测sql server死锁,希望对您有所帮助. 死锁(deadlock)指进程之间互相永久阻塞的状态,SQL可以检测到死锁,并选择终止其中一个事务以干预sql server死锁状态. 第一步:首先创建两个测试表,表goods_sort和goods 表goods_sort:创建并写入测试数据 IF EXISTS(SELECT name FROM sysobjects WHERE name='goods_sort' A

Flash动态缓冲图片导航制作详解

导航|动态|详解 缓冲公式在制作特效中非常有用,著名的三星导航菜单就用到了此公式.现在许多网站出尽风头,其中缓冲导航是其一大亮点.本文以一德国网站的导航为例,详解缓冲导航的制作.这个效果是我和溶剂共同完成的,他提供坐标的算法,我提供缩放的算法. 本例效果演示 鼠标划过的部分图片会变大 制作思路 图片缩放控制利用缓冲公式设置图片的缩放比例,如果鼠标滑过某图片,放大1.8倍.如果其它图片的序号与此图片的序号相差1,就是此图片两边的图片,放大1.4倍,其它的为原始大小. 图片坐标控制当某图片放大时,相

Javascript函数绑定应用技巧详解

文章简介:函数绑定要创建一个函数,可以在特定环境中以指定参数调用另一个函数. 函数绑定要创建一个函数,可以在特定环境中以指定参数调用另一个函数.该技巧常常和回调函数与事件处理程序一起使用,以便在将函数作为变量传递的同时保留代码执行环境.请看以下例子: var handler = { message: "Event handled", handleClick: function (event) { alert(this.message); } }; var btn = document.

深入理解JavaScript系列(22):S.O.L.I.D五大原则之依赖倒置原则DIP详解

 这篇文章主要介绍了深入理解JavaScript系列(22):S.O.L.I.D五大原则之依赖倒置原则DIP详解,本文讲解了DIP and JavaScript.何时依赖注入等内容,需要的朋友可以参考下     前言 本章我们要讲解的是S.O.L.I.D五大原则JavaScript语言实现的第5篇,依赖倒置原则LSP(The Dependency Inversion Principle ). 英文原文:http://freshbrewedcode.com/derekgreer/2012/01/2