SWFObject Flash js调用类


Posted in Javascript onJuly 08, 2008

 SWFObject是一个基于Javascript的Flash媒体版本检测与嵌入模块,其主要使用目的是让我们将FLASH嵌入网页中的操作更简单,加入了版本检测功能,符合XHTML的标准验证的插入,并解除了IE对FLASH点击激活的限制,对主流浏览器兼容。
首先让我们看一段SWFObject作用的代码:


//载入SWFObject类库
<script type="text/javascript" src="swfobject.js" src="swfobject.js"></script>
//设置一个DIV,并设置ID,这个DIV将做为FLASH插入的容器
<div id="flashcontent">播放此动画需要FlashPlayre8.0+ </div>
//利用SWFObject来插入FLASH
<script type="text/javascript"> var so = new SWFObject("movie.swf", "mymovie", "200", "100", "7", "#336699");
//将id为flashcontent的DIV中内容替换为FLASH
so.write("flashcontent");
</script>
看了上面的代码感觉如何?比起平时用Object来插入FLASH文件是不是简洁多了,而且代码结构更清晰,对这段代码的中文解释可参看AW对SWFObject的翻译,已经很详细了,不再赘述,下面只介绍一下个人认为最实用的功能。

一、版本检测 

难免存在播放器版本过低的用户,而且他们大多数是低端用户,对电脑知识了解较浅,如果他们看不到我们所指出的FLASH动画,或者是由于播放器版本不支持新版本中的某些特性,用户看到的是残缺的动画,那么这就是一个糟糕的用户体验,用户很容易将一切因素都归咎于产品的开发者。实用SWFObject就可以很好的避免这一麻烦,当它检测到用户的播放器版本低于我们设置的版本时,FLASH不会替换DIV容器中的内容,因此我们可以在这里给用户提示,例如:“你需要升级FLASH播放器版本至8.0+”。如果条件允许,我们可以在这里给用户一个Adobe的FlashPlayer的升级链接或者直接提供一个Active安装包给用户下载安装。

二、对FlashVars的支持

so.addVariable("arg1","test1"));
so.addVariable("arg2","test2"));
上面两句代码将以FlashVars的方式给FLASH的ROOT中添加两个变量arg1=test1,arg2=test2,简洁,方便,同时不用我们再考虑IE和FF的兼容问题。

注意:JS跟FLASH通信是以字符串传递的,因此对于Number型变量FLASH端需要做类型转换。

三、设置FLASH内联参数

so.addParam("wmode", "transparent");
这是我们很熟悉的设置FLASH背景透明的代码,其他内联属性可以尝试设置一下。

四、获取URL中的变量

对于url?arg1=test1&arg2=test2这样用GET方式传递变量的URL,我们可以用getQueryParamValue方法来获取变量。

var t1 = getQueryParamValue("arg1");
alert(t1);
官方地址:http://blog.deconcept.com/swfobject/

Javascript 相关文章推荐
JavaScript可否多线程? 深入理解JavaScript定时机制
May 23 Javascript
基于jQuery实现动态数字展示效果
Aug 12 Javascript
Jquery ajax 同步阻塞引起的UI线程阻塞问题
Nov 17 Javascript
JS实现消息来时让网页标题闪动效果的方法
Apr 20 Javascript
js 获取元素所有兄弟节点的实现方法
Sep 06 Javascript
Node.js查找当前目录下文件夹实例代码
Mar 07 Javascript
webpack 打包压缩js和css的方法示例
Mar 20 Javascript
jQuery访问json文件中数据的方法示例
Jan 28 jQuery
javaScript把其它类型转换为Number类型
Oct 13 Javascript
bootstrap-table后端分页功能完整实例
Jun 01 Javascript
JS如何调用WebAssembly编译出来的.wasm文件
Nov 05 Javascript
vue代码分块和懒加载非必要资源文件
Apr 11 Vue.js
Firefox和IE浏览器兼容JS脚本写法小结
Jul 07 #Javascript
图片自动缩小 点击放大
Jul 07 #Javascript
超级退弹代码
Jul 07 #Javascript
Javascript入门学习资料收集整理篇
Jul 06 #Javascript
javascript 火狐(firefox)不显示本地图片问题解决
Jul 05 #Javascript
javascript 火狐(firefox)不显示本地图片问题解决
Jul 05 #Javascript
用JS剩余字数计算的代码
Jul 03 #Javascript
You might like
第十一节 重载 [11]
2006/10/09 PHP
php中switch与ifelse的效率区别及适用情况分析
2015/02/12 PHP
PHP中CheckBox多选框上传失败的代码写法
2017/02/13 PHP
利用PHP实现开心消消乐的算法示例
2017/10/12 PHP
laravel使用Faker数据填充的实现方法
2019/04/12 PHP
Laravel实现ApiToken认证请求
2019/10/14 PHP
键盘控制事件应用教程大全
2006/11/24 Javascript
JavaScript快速切换繁体中文和简体中文的方法及网站支持简繁体切换的绝招
2016/03/07 Javascript
jQuery解决浏览器兼容性问题案例分析
2016/04/15 Javascript
JS实现鼠标滑过显示边框的菜单效果
2016/09/21 Javascript
vuejs绑定class和style样式
2017/04/11 Javascript
vue路由懒加载的实现方法
2018/03/12 Javascript
基于D3.js实现时钟效果
2018/07/17 Javascript
d3.js 地铁轨道交通项目实战
2019/11/27 Javascript
jQuery实现点击滚动到指定元素上的方法分析
2020/03/19 jQuery
[02:20]DOTA2中文配音宣传片
2013/05/22 DOTA
[44:30]完美世界DOTA2联赛PWL S2 GXR vs Magma 第一场 11.25
2020/11/26 DOTA
介绍Python的@property装饰器的用法
2015/04/28 Python
python批量下载网站马拉松照片的完整步骤
2018/12/05 Python
opencv与numpy的图像基本操作
2019/03/08 Python
Python Tkinter 简单登录界面的实现
2019/06/14 Python
python实现将文件夹内的每张图片批量分割成多张
2019/07/22 Python
numpy.array 操作使用简单总结
2019/11/08 Python
tensorflow基于CNN实战mnist手写识别(小白必看)
2020/07/20 Python
python Protobuf定义消息类型知识点讲解
2021/03/02 Python
解决Python import .pyd 可能遇到路径的问题
2021/03/04 Python
美国男装连锁零售商:Men’s Wearhouse
2016/10/14 全球购物
Uber Eats台湾:寻找附近提供送餐服务的餐厅
2018/05/07 全球购物
美国最大的存储市场:SpareFoot
2018/07/23 全球购物
工厂门卫岗位职责
2013/11/25 职场文书
幼儿园安全责任书
2014/04/14 职场文书
党员个人总结范文
2015/02/14 职场文书
法院个人总结
2015/03/03 职场文书
入团申请书格式
2019/06/20 职场文书
OpenCV-Python实现图像平滑处理操作
2021/06/08 Python
Redis 异步机制
2022/05/15 Redis