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

来源:互联网 发布:天地知我心二的作品 编辑:程序博客网 时间:2024/05/22 08:15
目前用 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>

原创粉丝点击