最近看到了好几个有图片轮换的网站,在head代码里都加载了一个swfobject.js,很是好奇,不知这个JS究竟有什么作用?
SWFObject是一个用于在HTML中方面插入Adobe Flash媒体资源(*.swf文件)的独立、敏捷的JavaScript模块。该模块中的JavaScript脚本能够自动检测PC、Mac机器上各种主流浏览器对Flash插件的支持情况。它使得插入Flash媒体资源尽量简捷、安全。而且它是非常符合搜索引擎优化的原则的。此外,它能够避免您的HTML、XHTML中出现object、embed等非标准标签,从而符合更加标准。
(即:通过text/html应答页面, 而非application/xhtml+xml)
发现用它的好处多多啊:
- IE中没有讨厌的虚框问题了。
- 提供了完善的版本检测功能,如果版本不够则显示其他东西,比如图片或文字。
- 易于使用,只要在页面头加载一个 .js 文件,然后 HTML 写一个容器,里面放普通的文本或图片(用于无法显示 Flash 时显示),最后用脚本来替换这个元素里面的内容为 Flash。
- 使得插入Flash媒体资源尽量简捷、安全。而且它是非常符合搜索引擎优化的原则的。
- 能够避免HTML、XHTML中出现object、embed等非标准标签,从而符合更加标准。
只需要包含 swfobject.js这个js文件,然后在DOM中插入一些简单的JS代码,就能嵌入Flash媒体资源了。
SWFObject2.0现提供两个主要调用方法:
1.swfobject.registerObject(flashContentId, flashVersion,expressInstallUrl
);
flashContentId为Flash的ID;
flashVersion为播放SWF的Player版本;
expressInstallUrl为Flash Player更新安装的swf调用地址;如果当前版本低于flashVersion将自动更新。
1 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> |
2 |
< html xmlns = "http://www.w3.org/1999/xhtml" lang = "en" xml:lang = "en" > |
4 |
< title >SWFObject 2 static publishing example page</ title > |
5 |
< meta http-equiv = "Content-Type" content = "text/html; charset=iso-8859-1" /> |
6 |
< script type = "text/javascript" src = "swfobject.js" ></ script > |
7 |
< script type = "text/javascript" > |
8 |
swfobject.registerObject("myId", "9.0.0", "expressInstall.swf"); |
13 |
< object id = "myId" classid = "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width = "300" height = "120" > |
14 |
< param name = "movie" value = "test.swf" /> |
16 |
< object type = "application/x-shockwave-flash" data = "test.swf" width = "300" height = "120" > |
19 |
< h1 >Alternative content</ h1 > |
20 |
< p >< a href = "http://www.adobe.com/go/getflashplayer" >< img src = "http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt = "Get Adobe Flash player" /></ a ></ p > |
2.swfobject.embedSWF(swfUrl, replaceElementId, swfWidth, swfHeight, flashVersion,expressInstallUrl, flashvars, params, attributes);
swfUrl为调用swf的地址;
replaceElementId为要用于替换成flash的可显示容器的ID;
swfWidth为swf的宽度;
swfHeight为swf的高度;
flashVersion为播放SWF的Player版本;
expressInstallUrl为Flash Player更新安装的swf调用地址;如果当前版本低于flashVersion将自动更新。
flashvars为flashvars传递的变量值;
params为flash player控件的参数设置;如menu=”false” ;
attributes为flash player控件的属性值设置;如class=”flashstyle”;
1 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> |
2 |
< html xmlns = "http://www.w3.org/1999/xhtml" lang = "en" xml:lang = "en" > |
4 |
< title >SWFObject 2 dynamic publishing example page</ title > |
5 |
< meta http-equiv = "Content-Type" content = "text/html; charset=iso-8859-1" /> |
6 |
< script type = "text/javascript" src = "swfobject.js" ></ script > |
7 |
< script type = "text/javascript" > |
8 |
swfobject.embedSWF("test.swf", "myContent", "300", "120", "9.0.0", "expressInstall.swf"); |
13 |
< h1 >Alternative content</ h1 > |
14 |
< p >< a href = "http://www.adobe.com/go/getflashplayer" >< img src = "http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt = "Get Adobe Flash player" /></ a ></ p > |
更多资料请查看SWFObject 项目官方 http://code.google.com/p/swfobject/
SWFObject 2.2 下载
SWFObject 2 HTML and JavaScript generator v1.2 (Adobe AIR 1 version)下载
SWFObject 2 HTML and JavaScript generator v1.2 (HTML version)下载
评论前必须登录!
注册