解决IE更新对FLASH产生影响
2008-04-02 11:02:41来源:互联网 阅读 ()
前天微软更新了IE浏览器,针对IE的更新,使ActiveX内容不能自载入的问题引起了许多人的关注.这些改变能够在Adobe的某些软件中看到,包括flashplayer.Authorware player, shockwave Player, SVG Viewer,Help Center 和 Adobe Reader,当然更有 Sun Java, Apple QuickTime, RealNetworks,RealPlayer和其他的ActiveX .通过某些方法嵌入到html页面中的交互内容可能不能响应用户的输入(例如,键盘,鼠标)直到用户点击要么激活要么继续loading .下面我的看看他到底是怎么一回事,并怎样解决他来使用户最大限度的方便浏览.
问题
当您查看web页面时,windows下的IE浏览器会将ActiveX内容显不为一个矩形框和一个提示内容为”Click to activate and use this control”意思就是您需要激活ActiveX的内容才能够查看或交互控制,ActiveX内容可能或不能象您预想的那样载入并进行播放. 能够查看Adobe提供的演示:这里
Adobe的解决方案
有如下两种解决方法:
方法1
假如您浏览了包含ActiveX的页面.点击这个内容激活他.
方法2
假如您正在研发一个网站,移除针对ActiveX内容所需的用户激活过程.针对此Adobe提供了一份基于javascriptr 解决文档.这里
通过使用Adobe的解决文档能够解决上述问题.
那么除了上述方法之外更有没有其他更简单的方法呢,答案是肯定的.能够使用deconcept 的flashObject 相比而言会比使用Adobe的方法更简单一些.并且运行状况是良好的.这里下载Download FlashObject 1.3 (38 hits)
基本方法如下:
只需要将flashobject.js 包含在您的html页面内,然后加上一点javascript代码嵌入flash swf就ok了.
他的工作方式如下:
代码:
This text is replaced by the Flash movie.
简单分析一下,或是您能够仔细看flashObject的文档
代码:
这一段相当于我们在为放置flash文档而准备的一个holder.有些象我们常用的空的MovieClip holder.为放入内容而准备的.假如您没有装flashplayer.那么里面的那行字会显示出来如显示为”This text is replaced by the Flash movie.”
假如您装了flashplayer,那这行字是不会显示的,用户基本上是看不到的,同时他更有一个好处是您能够把这行内容变成的您搜索关键字,google会很容易搜到他的.呵呵,一举两得.
下面这段一看就知道是什么了.
代码:
用来嵌入swf,比如当前的影片文档是”movie.swf”, id是”mymoive,宽是200,高是100,flashplayer版本是7,背景色是#336699.
下面我们来看一下我们嵌入一个flash的范例.
根据上面的基本工作方式,我们还要嵌入一些其他的参数.来满足我们一些其他的需要比如我们有一个文档名为ws.swf,我们想把他嵌入到页面中,又不至于受IE更新的影响.
1.在页面中包入flashobject.js文档
一般这行代码能够写在body标签之前即可.
2.把下面这段代码加在他下方.
代码: