在浏览网站的时候发现一个问题,当你将鼠标移动到FALSH等类型的控件上之后,就会出现“单击以激活并使用此控件”的提示,感觉非常讨厌。每次刷新都需要先点击进行激活。后来在网上查找相关内容,终于找到原因,今天整理出来和大家分享,希望对你有所帮助。
因为现在Flash的显示方式和以前不同了,将鼠标放到FLASH等控件上面就会有一个虚线框,提示说“单击以激活并使用此控件”。也就是说页面刚打开的时候,页面上的Flash是没有被激活的,需要用户点击确认,这时Flash可以正常播放,但如果里面有交互性内容(比如:按钮)就不能直接点击,鼠标点击激活后交互性内容才可以使用。原因是你的系统在最近升级更新过了,并且安装了更新系统编号为KB912945的补丁。
这是微软为了避免与Eolas公司和加利福尼亚大学之间的专利侵权纠纷,而发布的一个IE非安全更新,这不是什么BUG 。
安装这个补丁以后,IE浏览器对ActiveX控件和Java程序的处理方式将有所改变,默认情况下不会主动激活,因此用户在访问Flash广告等网络内容时需要多点击一次鼠标,但非交互式控件不会改变,微软已经通知网站开发人员最好对他们的网页作出相应修改!
客户端的解决办法:
在控制面板的"添加删除程序"中删除编号为"KB912945"的更新,如果列表中没有显示,需要在"添加删除程序"窗口右上角的“显示更新”前打√。
网站开发人员的应对办法:
首先,写一个js文件。用记事本即可,输入下列语句后,命名为“flash.js”
function LoadFlash(wmode,url,width,Height)
{
document.write(
'<embed src="' + url + '" wmode=' + wmode +
' quality="high" pluginspage=http://www.macromedia.com/go/getflashplayer type="application/x-shockwave-flash" width="' + width +
'" height="' + Height + '"></embed>');
}
然后将此文件置于指定位置(例如JS/flash.js,这里的文件是相对于显示FLASH的页面的所在位置说的)
然后在插入FLASH的位置,输入下列语句:(// 后面为注释部分,添加页面时删去)
<script type="text/
javascript" src="js/flash.js"></script>
//SCR为JS文件所在位置,也是相对于此代码的页面
<div id="test"></div>
//id为CSS格式,可以省略
<script type="text/
javascript">LoadFlash('movie','myflash.swf', 700, 400);</script>
OK!