1 swfobject可以将swf文件嵌入到网页内,它是一个js文件,可以从这里下载:http://code.google.com/p/swfobject/

2 swfobject使用很简单,只要在网页<head></head>里加入对它的引用就可以使用了:

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

3 下面是自己做的一个简单例子:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><title>SWFObject 2 dynamic publishing example page</title><script type="text/javascript" src="swfobject.js"></script><script type="text/javascript">var flashvars = {};var params = {wmode : 'opaque'//加入这个参数后,那个嵌入的swf文件就不会被致于最上顶层,而是嵌入到指定的div里面};var attributes = {};//这个是js的一个方法,在FlexPaperTest.swf里面就指定了要调用js的getPath()方法,这个也是作不swf文件与js进行交互,传参的例子function getPath() {return "b.swf";//待显示的swf文件路径}swfobject.embedSWF("FlexPaperTest.swf", "showFileArea", "100%", "720","9.0.0", "playerProductInstall.swf", flashvars, params, attributes);</script></head><body><!-- 下面这个是在留出一个div来供上面的要显示的swf使用,上面的embedSWF方法的第二个参数就是指定swf显示在页面的div的id。使用object的方法是会自动检测用户是否安装合适的flash插件,没有时,就要这个div层显示要下载相应的插件     --><div id="showFileArea"><h1>Alternative content</h1><p><a href="http://www.adobe.com/go/getflashplayer"><imgsrc="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif"alt="Get Adobe Flash player" /> </a></p></div></body>
</html>

转载再一下swfobject的使用:

SWFObject的使用是非常简单的,只需要包含 swfobject.js这个js文件,然后在DOM中插入一些简单的JS代码,就能嵌入Flash媒体资源了。 下面是一个最简单的范例:

<script type="text/javascript" src="swfobject.js"></script><div id="flashcontent">This text is replaced by the Flash movie.
</div><script type="text/javascript">var so = new SWFObject("movie.swf", "mymovie", "200", "100", "7", "#336699");so.write("flashcontent");
</script>

让我们看看这些代码是如何工作的

<div id="flashcontent">[...]</div>

首先,我们要为SWF资源预留一个HTML结点。这个HTML结点内的所有内容都会在客户端被Flash资源替换,当客户端没有安装Flash播放器的时候,这些内容会显示出来。这一特色在SEO以及对用户体验方面非常有必要。

var so = new SWFObject(swf, id, width, height, version, background-color [, quality, xiRedirectUrl, redirectUrl, detectKey]);

创建一个新的SWFObject实例,并且传入一下参数:

  • swf - SWF文件路径
  • id - 您为这个SWF文件分配的id值,它将用于给embed与object标签设定name属性,以便于可以支持swliveconnect的功能,如动态传入变量
  • width - 宽度
  • height - 高度
  • version - FlashPlayer需要的版本号,它可以详细到 '主版本号.小版本号.细节',例如:"6.0.65"。一般地,我们只需传入主版本即可,例如:"6"
  • background-color - Flash资源的背景色,16进制格式

此外,还有如下可选参数:

  • quality - 画面质量,默认为"high"
  • xiRedirectUrl - 详见ExpressInstall相关
  • redirectUrl - 没有安装相应版本的播放器后自动跳转的目标地址
  • detectKey - 这是当忽略检测时,SWFObject将去url地址中查找的变量,默认值为“detectflash”,后续有详细介绍
  • so.write("flashcontent");
  • 将Flash资源应用到DOM里,在浏览器显示出来。

细节

SWFObject 的灵活性非常好。您完全可以事先写好HTML的其他部分,最后再回过头来添加Flash内容。这样可以确保在客户端没有Flash的情况下,用户不会一无所获;也可以确保针对搜索引擎,做了什么样的关键词优化。您完全不用像以前那样担心客户端的各种状况

SWFObject兼容当前各种主流浏览器,如:PC上的IE5/5.5/6, Netscape 7/8,Firefox, Mozilla, and Opera。Mac上的IE5.2, Safari, Firefox, Netscape 6/7, Mozilla, and Opera 7.5+,各种浏览器的后续版本也会继续支持

SWFObject检测Flash播放器版本从3开始到最新的版本号,而且也消灭了IE中“激活”的麻烦。这里有相关背景

SWFObject可以方便地检查版本细节,例如我们需要v.6.0 r65 (or 6,0,65,0) 来处理SWF资源,就可以添加如下代码:

var so = new SWFObject("movie.swf", "mymovie", "200", "100", "6.0.65", "#336699");

SWFObject的版本检测可以人工忽略。如果在特定环境下您不希望SWFObject检测版本号,那么只需要传递一个参数在HTML页面中,就可以了。SWFObject可以捕获这个参数并且跳过检测,直接写入Flash嵌入代码到DOM中。用于忽略版本检测的变量名是“detectflash”,以下是一个例子:

<a href="mypage.html?detectflash=false">Bypass link</a>

SWFObject 范例

以上我们接触到的范例都最基础的,接下来我们列举一些其他功能,尤其是传入参数、变量这些使用频率较高的行为。

传入Flash内联参数的简单范例

<script type="text/javascript">var so = new SWFObject("movie.swf", "mymovie", "200", "100%", "7", "#336699");so.addParam("quality", "low");so.addParam("wmode", "transparent");so.addParam("salign", "t");so.write("flashcontent");
</script>

这里可以看到Flash支持的内联参数列表:full list of the current parameters and their possible values(adobe.com官方资源)

采用"Flashvars"参数传入变量

用Flashvars是在预加载Flash时传入数据的最佳做法,语法格式与GET变量串非常类似,如:variable1=value1&variable2=value2&variable3=value3SWFObject帮助您将这项工作变得更加明确化

<script type="text/javascript">var so = new SWFObject("movie.swf", "mymovie", "200", "100", "7", "#336699");so.addVariable("variable1", "value1");so.addVariable("variable2", "value2");so.addVariable("variable3", "value3");so.write("flashcontent");
</script>

这些变量将会保存在_root这个MovieClip对象里。

SWFObject还可以方便地直接从URL中接受参数传入Flash中,例如你有这样一个URL:http://www.example.com/page.html?variable1=value1&variable2=value2。采用getQueryParamValue()方法你就可以轻松获取这些参数,并将它们传入Flash,例如:

<script type="text/javascript">var so = new SWFObject("movie.swf", "mymovie", "200", "100", "7", "#336699");so.addVariable("variable1", getQueryParamValue("variable1"));so.addVariable("variable2", getQueryParamValue("variable2"));so.write("flashcontent");
</script>

getQueryParamValue()方法同样可以获取JavaScript的Location对象的hash值“location.hash”来与swf内部进行通信。这里是一个采用SWFObject的应用程序,其中用到了location.hash对象:链接地址

在SWFObject中应用Express Install(利用官方自动升级接口)

SWFObject全面支持AdobeFlash播放器的自动升级功能(从6.0.65起的FlashPlayer支持在swf内部自动升级!),这样用户完全不用离开您的网页就能完成播放器的升级了。

首先,上传官方的expressinstall.swf到您的服务器上,然后使用useExpressInstall方法指定这个swf文件的地址就可以了,例如:

<script type="text/javascript">var so = new SWFObject("movie.swf", "mymovie", "200", "100", "8", "#336699");so.useExpressInstall('expressinstall.swf');so.write("flashcontent");</script>

您可以安装一个低版本的Flash播放器然后访问这个页面看到效果

在SWFObject原文件压缩包中您可以找到具体的使用细节,您可以自己定制ExpressInstall的流程。

如果您的Flash影片在弹出窗口中,或者您希望用户在完成了ExpressInstall后重定向到其他地址,你可以采用xiRedirectUrl属性,来自动完成这一步骤。例如:

<script type="text/javascript">var so = new SWFObject("movie.swf", "mymovie", "200", "100", "8", "#336699");so.useExpressInstall('expressinstall.swf');so.setAttribute('xiRedirectUrl', 'http://www.example.com/upgradefinished.html'); // must be the absolute URL to your siteso.write("flashcontent");
</script>

swfobject的使用相关推荐

  1. 转载:页面加载swf插件:swfobject

    转自:http://www.cnblogs.com/analyzer/articles/1299592.html 我一直都在用SWFObject 插入flash,好处多多,代码简洁,不会出现微软的&q ...

  2. swfobject.embedSWF属性与用法

    swfobject.embedSWF属性与用法 2010-06-29 09:47/点击数( 2218) swfobject.embedSWF(swfUrl, id, width, height, ve ...

  3. swfobject.js视频播放插件

    在网页中经常会用到视频播放的功能,下面介绍一下swfobject.js的视频播放应用: html代码结构: <div id="video_content"></d ...

  4. swfobject.js 2.2简单使用方法

    swfobject.js 2.2简单使用方法 官方网址介绍 http://code.google.com/p/swfobject/wiki/documentation 用法: html部分 <d ...

  5. swfobject2.2参数详解(swfobject.embedSWF)

    swfobject.embedSWF(swfUrlStr, replaceElemIdStr, widthStr, heightStr, swfVersionStr, xiSwfUrlStr, fla ...

  6. SWFObject参数

    2019独角兽企业重金招聘Python工程师标准>>> 最近看到了好几个Flash网站,head代码里都加载了一个swfobject.js,这个JS究竟有什么作用呢?眼下正在做一个W ...

  7. SWFObject.js入门

    SWFObject: 基于Javascript的Flash媒体版本检测与嵌入模块 原文:SWFObject: Javascript Flash Player detection and embed s ...

  8. SWFObject 2.0官方文档

    SWFObject 2.0官方文档 2008年4月24日 翻译:farthinker 主要内容: 1 . 什么是SWFObject 2.0? 2 . 为什么你应该使用SWFObject 2.0? 3 ...

  9. SWFObject参数,SWFObject使用方法

    swfobject.embedSWF(swfUrl, id, width, height, version, expressInstallSwfurl, flashvars, params, attr ...

  10. swfobject.js 的用法

    最近看到了好几个Flash网站,head代码里都加载了一个swfobject.js,这个JS究 竟有什么作用呢?眼下正在做一个Web页面,说不定刚好可以派上用场.于是,好奇的搜索了一下.原来这是老外开 ...

最新文章

  1. DJANGO获取用户访问IP
  2. 以python入门教程新世界-国外旅行也不忘学习Python:Python 操作列表001
  3. java怎么通过ip地址查具体地址_制作通过IP 查询地址的java版程序
  4. 【干货】CRM大牛告诉你,Salesforce到底是个什么鬼?
  5. 编写MyLayer,2 锚点,3 精灵的创建,4 zorder
  6. 将SQL文件导入Hive
  7. EntityFramework Core上下文实例池原理
  8. atomic在linux编译不通过,内存障碍和在linux上的atomic_t
  9. 程序—java年月日转换
  10. 这些C4D创意卡通色彩场景,简直酷到爆炸!
  11. 想要预览文件或是图片,将后端返回的信息转换为前端可以正常显示的格式
  12. JAVA 序列化 Jackson_SpringBoot系列——Jackson序列化
  13. DjangoForm 之创建FORM模板进行验证
  14. 感知算法-超声波三角定位测量方法
  15. Teamviewer使用方法
  16. 对于Android虚拟机启动失败“The emulator process for AVD Nexus_5X_API_30 was killed”的解决方案
  17. NetworkX学习笔记07:泊松分布与幂律分布
  18. mipi协议csi和dsi
  19. org.apache.tomcat.util.descriptor.web.WebXml.setVersion Unknown version stri
  20. marlin2.0.5.4配置详解——个人记录

热门文章

  1. 让数据分析更easy的选择—贪心科技AI商业数据分析课程深度测评
  2. 计算机不能打印图片,win7系统电脑连接打印机可以打印文档不能打印图片的解决方法...
  3. 哈哈哈,这个勒索软件笑死我了!太菜了~
  4. 微信数据解密-dat查看-免费dat转图片
  5. 深度学习入门_对ORL数据集进行特征提取降维后SVM分类
  6. 目标检测的图像特征提取之(一)HOG特征
  7. mt管理器主题修改教程_QQ主题+微博主题
  8. Ubuntu 18.04.3 LTS - 安装 Spring Tool Suite 4
  9. gis 数据框裁剪_【更新80篇】地理数据科学技术文章合集,欢迎大家点赞、在看、转发三连!...
  10. NOIP2016普及组T3(海港)题解