在网页中用JS插入Flash的方法: SWFObject

转载 2010年04月06日 08:39:00

目前用 JS 嵌入 Flash 是最完美的方法, 尽管这个方法也说不上最科学, 但它在保证 Flash 功能的前提下还利用JS 提供了更多的好处, 比如 SWFObject, 我们还有什么理由不用它..

SWFObject是一个用于在HTML中方面插入Adobe Flash媒体资源 (*.swf文件)的独立, 敏捷的JavaScript模块. 该模块中的JavaScript脚本能够自动检测PC, Mac机器上各种主流浏览器对Flash插件的支持情况. 它使得插入Flash媒体资源尽量简捷, 安全. 而且它是非常符合搜索引擎优化的原则的. 此外, 它能够避免您的HTML, XHTML中出现object, embed等非标准标签, 从而符合更加标准. 还加入了版本检测功能, 并解除了IE对Flash点击激活的限制, 对主流浏览器兼容.
(即: 通过text/html应答页面, 而非application/xhtml+xml)

SWFObject的使用是非常简单的, 只需要 swfobject.js这个js文件, 然后在DOM中插入一些简单的JS代码, 就能嵌入Flash资源了, 这里就写个简单的用法:

1. 下载SWFObject的 js 文件
下载地址: http://blog.deconcept.com/swfobject/swfobject.zip
包含swfobject.js 和其他范例.

2. 在 HTML 页面 head 头部区嵌入这个js文件

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

3. 在你的 HTML 中写一个用来放 Flash 的div
比如: (给一个你想取的id 比如 swfcontent, 然后在这个div里放上你的替换内容.)

<div id="swfcontent">
 这里放替换内容, 用来在 Flash 无法显示时显示.
</div>

4. 使用作用代码
当然这脚本也可以写在外部 js 文件中!

<script type="text/javascript">
 var so = new SWFObject("expressinstall.swf", "expressinstall", "200", "100", "7", "#666666");
 //参数意思: 地址, Flash 的id (不是div的id), 宽, 高, 版本需求, 背景颜色(这个参数当然也可以设置成透明"wmode" 再 so.addParam("wmode","transparent");)
 //此外, 还有如下可选参数:
 //quality – 画面质量, 默认为"high".
 //xiRedirectUrl – ExpressInstall相关
 //redirectUrl – 没有安装相应版本的播放器后自动跳转的目标地址
 //detectKey – 这是当忽略检测时, SWFObject将去url地址中查找的变量, 默认值为 "detectflash".
 so.write("swfcontent");
 //将id为swfcontent的div中内容替换为Flash
</script>

OK

整个htm代码示例:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Your Title</title>
<script type="text/javascript" src="swfobject.js"></script>
</head>

 

<body>

<div id="swfcontent">
 这里放替换内容, 用来在 Flash 无法显示时显示.
</div>

<script type="text/javascript">
 var so = new SWFObject("expressinstall.swf", "expressinstall", "200", "100", "7", "#666666");
 so.write("swfcontent");
</script>

</body>
</html>

HTML插入Flash的全兼容完美解决方案-SWFObject

Flash 嵌入的问题朋友们可能认为很简单,但是具体到一些问题上来讲,就不是那么简单了,比如:IE浏览器对FLASH的拦截虚框怎么去掉?在FF、OP、NS等其它浏览器是否兼容?代码是否符合W3C标准?...
  • maco_liao
  • maco_liao
  • 2016年03月21日 13:26
  • 8683

用js控制flash来实现全屏效果

说起来真是惭愧,学习flash都三四年了,
  • mengtianwxs
  • mengtianwxs
  • 2014年07月02日 14:10
  • 4106

HTML 页面加载 Flash 插件的几种方法

前言 之所以写这篇文章,主要是因为组长给提的一个新的需求——使用浏览器调用电脑的摄像头,来实现即时拍照的功能。在网上查了很多资料,由于这样那样的原因,最终选择了使用flash插件来调用pc的...
  • happylee6688
  • happylee6688
  • 2014年06月25日 15:06
  • 30107

网页中通过swfobject插入Flash动画以及设置透明

前言今天在浏览网页时候,发现有的网站上既然可以在任意地方插入视频,且可以控制视频的显示范围,瞬间感觉效果还不错,经查看源代码,发现不过是在网站上嵌入flash动画而已,或是在flash中在动态引用外部...
  • hsd2012
  • hsd2012
  • 2016年06月12日 17:40
  • 1717

swfobject+swffit实现flash嵌入网页自适应大小

  • 2016年11月08日 11:12
  • 381KB
  • 下载

swfobject.js代替JavaScript实现点击按钮显示Flash动画

  • 2010年08月06日 14:47
  • 153KB
  • 下载

swfobject 2.2 去除网页Flash(SWF文件)的虚线框

  • 2010年08月06日 14:47
  • 26KB
  • 下载

HTML插入Flash的全兼容完美解决方案-SWFObject

Flash 嵌入的问题朋友们可能认为很简单,但是具体到一些问题上来讲,就不是那么简单了,比如:IE浏览器对FLASH的拦截虚框怎么去掉?在FF、OP、NS等其它浏览器是否兼容?代码是否符合W3C标准?...
  • maco_liao
  • maco_liao
  • 2016年03月21日 13:26
  • 8683

SWFObject.js Flash性能增强插件

  • 2009年08月05日 09:04
  • 4KB
  • 下载

swfobject.js 2.2简单使用方法

官方网址介绍 http://code.google.com/p/swfobject/wiki/documentation 用法: html部分 ...... js部分    swf...
  • w_y_loong
  • w_y_loong
  • 2012年11月25日 10:29
  • 3569
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在网页中用JS插入Flash的方法: SWFObject
举报原因:
原因补充:

(最多只允许输入30个字)