当前位置: 首页 > 图文教程 > 网络编程 > Javascript > SWFObject Flash js调用类

Javascript
颜色变换 像字符逐字输入的欢迎词
CSS 伪类实现的鼠标滑动图片链接
百度用到的Js日历 大家可以看看
CSS 渐变背景的6个演示代码
Jquery 弹出层插件实现代码
Javascript 模式实例 观察者模式
[原创]javascript 指定区域内图片等比例缩放实现代码 脚本之家整合版
javascript window对象属性整理
JavaScript弹簧振子超简洁版 完全符合能量守恒,胡克定理
WEB页子窗口(showModalDialog和showModelessDialog)使用说明
用JavaScript实现 铁甲无敌奖门人 “开口中”猜数游戏
理解 JavaScript 预解析
理解JavaScript变量作用域更轻松
JavaScript的变量作用域深入理解
javascript写的一个链表实现代码
Js 打字效果 逐一出现的文字
javascript 走马灯效果的链接提示
CSS 动态链接提示
JavaScript 事件的一些重要说明
JavaScript 三种不同位置代码的写法

Javascript 中的 SWFObject Flash js调用类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 265 ::
收藏到网摘: n/a

一直想为 SWFObject 这个JS的类库写一个推荐帖,因为他轻便,同时功能强大,为我们的开发带来了很大的便捷。 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/