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 相关文章推荐
基于jquery的实现简单的表格中增加或删除下一行
Aug 01 Javascript
jsvascript图像处理—(计算机视觉应用)图像金字塔
Jan 15 Javascript
Js日期选择器并自动加入到输入框中示例代码
Aug 02 Javascript
JavaScript弹出窗口方法汇总
Aug 12 Javascript
js实现表单Radio切换效果的方法
Aug 17 Javascript
使用jquery提交form表单并自定义action的方法
May 25 Javascript
JavaScript 判断一个对象{}是否为空对象的简单方法
Oct 09 Javascript
vue一个页面实现音乐播放器的示例
Feb 06 Javascript
使用JavaScript中的lodash编写双色球效果
Jun 24 Javascript
Vue 使用formData方式向后台发送数据的实现
Apr 14 Javascript
Nuxt.js nuxt-link与router-link的区别说明
Nov 06 Javascript
vue 防止页面加载时看到花括号的解决操作
Nov 09 Javascript
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
漂亮但不安全的CTB
2006/10/09 PHP
jQuery 源码分析笔记
2011/05/25 PHP
php安装扩展mysqli的实现步骤及报错解决办法
2017/09/23 PHP
基于jquery的监控数据是否发生改变
2011/04/11 Javascript
jQuery随机切换图片的小例子
2013/04/18 Javascript
jQuery .attr()和.removeAttr()方法操作元素属性示例
2013/07/16 Javascript
JavaScript:Div层拖动效果实例代码
2013/08/06 Javascript
jQuery实现简单的DIV拖动效果
2016/02/19 Javascript
JavaScript实现复制内容到粘贴板代码
2016/03/31 Javascript
有关JavaScript中call()和apply() 的一些理解
2016/05/20 Javascript
Bootstrap布局之栅格系统详解
2016/06/13 Javascript
AngularJS 基础ng-class-even指令用法
2016/08/01 Javascript
BootStrap 下拉菜单点击之后不会出现下拉菜单(下拉菜单不弹出)的解决方案
2016/12/14 Javascript
纯JS实现表单验证实例
2016/12/24 Javascript
vue自定义filters过滤器
2018/04/26 Javascript
发布订阅模式在vue中的实际运用实例详解
2019/06/09 Javascript
详解Webpack如何引入CDN链接来优化编译后的体积
2019/06/21 Javascript
vue-mugen-scroll组件实现pc端滚动刷新
2019/08/16 Javascript
[00:34]TI7不朽珍藏III——地穴编织者不朽展示
2017/07/15 DOTA
Python使用PyGreSQL操作PostgreSQL数据库教程
2014/07/30 Python
Sanic框架请求与响应实例分析
2018/07/16 Python
Python面向对象之接口、抽象类与多态详解
2018/08/27 Python
python语言元素知识点详解
2019/05/15 Python
numpy按列连接两个维数不同的数组方式
2019/12/06 Python
对Pytorch中Tensor的各种池化操作解析
2020/01/03 Python
python读取当前目录下的CSV文件数据
2020/03/11 Python
Python3爬虫关于代理池的维护详解
2020/07/30 Python
如何查看python关键字
2021/01/17 Python
详解pandas apply 并行处理的几种方法
2021/02/24 Python
医学护理毕业生自荐信
2013/11/07 职场文书
行政专员岗位职责
2014/01/02 职场文书
应聘医药销售自荐书范文
2014/02/08 职场文书
现金出纳岗位职责
2014/03/15 职场文书
2014群众路线学习笔记
2014/11/06 职场文书
2016年学校招生广告语
2016/01/28 职场文书
MySQL利用UNION连接2个查询排序失效详解
2021/11/20 MySQL