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 相关文章推荐
根据选择不同的下拉值出现相对应的文本输入框
Aug 01 Javascript
解决window.opener=null;window.close(),只支持IE6不支持IE7,IE8的问题
Jan 14 Javascript
HTML5使用DeviceOrientation实现摇一摇功能
Jun 05 Javascript
修复jQuery tablesorter无法正确排序的bug(加千分位数字后)
Mar 30 Javascript
Angular.js与Bootstrap相结合实现表格分页代码
Apr 12 Javascript
Angular2内置指令NgFor和NgIf详解
Aug 03 Javascript
又一款MVVM组件 构建自己的Vue组件(2)
Mar 13 Javascript
详解10分钟学会vue滚动行为
Sep 21 Javascript
微信小程序实现的贪吃蛇游戏【附源码下载】
Jan 03 Javascript
elementUI select组件默认选中效果实现的方法
Mar 25 Javascript
从Node.js事件触发器到Vue自定义事件的深入讲解
Jun 26 Javascript
vue-calendar-component 封装多日期选择组件的实例代码
Dec 04 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
php smarty 二级分类代码和模版循环例子
2011/06/16 PHP
php精确的统计在线人数的方法
2015/10/21 PHP
Zend Framework分发器用法示例
2016/12/11 PHP
PHP实现Unicode编码相互转换的方法示例
2020/11/17 PHP
javascript(jquery)利用函数修改全局变量的代码
2009/11/02 Javascript
JavaScript中常见陷阱小结
2010/04/27 Javascript
当达到输入长度时表单自动切换焦点
2014/04/06 Javascript
JavaScript实现的双向跨域插件分享
2015/01/31 Javascript
JavaScript实现列表分页功能特效
2015/05/15 Javascript
jQuery动态星级评分效果实现方法
2015/08/06 Javascript
谈谈javascript中使用连等赋值操作带来的问题
2015/11/26 Javascript
基于Bootstrap的Metronic框架实现页面链接收藏夹功能
2016/08/29 Javascript
微信小程序 canvas API详解及实例代码
2016/10/08 Javascript
js实现的在线调色板功能完整实例
2016/12/21 Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
2016/12/28 Javascript
Angularjs使用ng-repeat中$even和$odd属性的注意事项
2016/12/31 Javascript
微信小程序开发之数据存储 参数传递 数据缓存
2017/04/13 Javascript
JS ES6中setTimeout函数的执行上下文示例
2017/04/27 Javascript
详解vue-cli与webpack结合如何处理静态资源
2017/09/19 Javascript
微信小程序实现添加手机联系人功能示例
2017/11/30 Javascript
React中常见的动画实现的几种方式
2018/01/10 Javascript
解决Angularjs异步操作后台请求用$q.all排列先后顺序问题
2019/11/29 Javascript
Vue快速实现通用表单验证的方法
2020/02/24 Javascript
Ant Design Pro 之 ProTable使用操作
2020/10/31 Javascript
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
2021/01/22 Vue.js
[06:16]《DAC最前线》之地区预选赛全面回顾
2015/01/19 DOTA
python 调用c语言函数的方法
2017/09/29 Python
在CentOS6上安装Python2.7的解决方法
2018/01/09 Python
python通过zabbix api获取主机
2018/09/17 Python
浅谈pycharm的xmx和xms设置方法
2018/12/03 Python
python的pytest框架之命令行参数详解(上)
2019/06/27 Python
解决Alexnet训练模型在每个epoch中准确率和loss都会一升一降问题
2020/06/17 Python
可视化pytorch 模型中不同BN层的running mean曲线实例
2020/06/24 Python
Python3安装模块报错Microsoft Visual C++ 14.0 is required的解决方法
2020/07/28 Python
2016大学迎新晚会开场白
2015/11/24 职场文书
日本十大血腥动漫,那些被禁播的动漫盘点
2022/03/21 日漫