谢谢 !!!!111
在网页中插入的Flash,在进行页面浏览时会有讨人嫌的提示“单击激活并使用此控件”,Flash文件的周围具有边框显示,必须单击该Flash才能消除该提示,着实很麻烦。
平时一直没在意,最近感觉到看着页面中的Flash比较难过,随即搜索些解决方案整理下来:
首先了解下含有Flash内容的网页在IE浏览器下为什么会出现“单击激活并使用此控件”?
微软为了避免与eolas公司和加利福尼亚大学之间的专利侵权纠纷,而发布的一个ie非安全更新,系统编号为kb912945的补丁。( http://support.microsoft.com/kb/912945)安装这个补丁以后,ie对activex控件和java程序的处理方式将有所改变,默认情况下不会主动激活,因此用户在访问flash广告等网络内容时需要多点击一次鼠标,但非交互式控件不会改变。
解决的第一个办法是,不直接向网页中插入Flash,而是在网页中定义命名一个网页元素,通过innerHTML方法将Flash的代码写入该元素显示。
1,JS文件flash.js
function insertFlash(elm, url, w, h) {
if (!document.getElementById(elm)) return;
var str = '';
str += '<object width="'+ w +'" height="'+ h +'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase=" http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0">';
str += '<param name="movie" value="'+ url +'">';
str += '<param name="wmode" value="opaque">';
str += '<param name="quality" value="autohigh">';
str += '<embed width="'+ w +'" height="'+ h +'" src="'+ url +'" quality="autohigh" wmode="opaque" type="application/x-shockwave-flash" plugspace=" http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed>';
str += '</object>';
document.getElementById(elm).innerHTML = str;
}
函数insertFlash(elm, url, w, h)的四个参数分别代表网页中元素名称,Flash动画文件路径地址,Flash动画要显示的长和宽。
2,需要显示Flash的网页文件引用该JS文件
<script type="text/javascript" src="flash.js"></script>
3,如何显示Flash动画。刚才说了是定义定义命名一个网页元素。应用JavaScript中定义的函数进行innerHTML操作
<div id="testflash"></div>
<script type="text/javascript">
insertFlash('testflash', 'flash/main.swf', 350, 500);
</script>
其中div就是一网页元素,id为“testflash”,则应用函数时代入该名称,其余参数参上说明。
当然,现在来看,我们所查看浏览的含有Flash的网页都是网页制作者使用软件生产出来的,目前很多的用户即是使用Dreamweaver,尽管目前Dreamweaver已经到了Dreamweaver CS3(Dreamweaver 9),但仍有很多用户使用早期版本,Dreamweaver8的用户居多,但同时需要注意:将您的Dreamweaver 8升级到8.0.2即可解决Flash的“单击激活并使用此控件”。
同样,Dreamweaver在用户插入一个Flash元素到网页中时,Dreamweaver自动生成了一个JS文件:AC_RunActiveContent.js,该文件在网站上传时需同时上传。
平时一直没在意,最近感觉到看着页面中的Flash比较难过,随即搜索些解决方案整理下来:
首先了解下含有Flash内容的网页在IE浏览器下为什么会出现“单击激活并使用此控件”?
微软为了避免与eolas公司和加利福尼亚大学之间的专利侵权纠纷,而发布的一个ie非安全更新,系统编号为kb912945的补丁。( http://support.microsoft.com/kb/912945)安装这个补丁以后,ie对activex控件和java程序的处理方式将有所改变,默认情况下不会主动激活,因此用户在访问flash广告等网络内容时需要多点击一次鼠标,但非交互式控件不会改变。
解决的第一个办法是,不直接向网页中插入Flash,而是在网页中定义命名一个网页元素,通过innerHTML方法将Flash的代码写入该元素显示。
1,JS文件flash.js
function insertFlash(elm, url, w, h) {
if (!document.getElementById(elm)) return;
var str = '';
str += '<object width="'+ w +'" height="'+ h +'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase=" http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0">';
str += '<param name="movie" value="'+ url +'">';
str += '<param name="wmode" value="opaque">';
str += '<param name="quality" value="autohigh">';
str += '<embed width="'+ w +'" height="'+ h +'" src="'+ url +'" quality="autohigh" wmode="opaque" type="application/x-shockwave-flash" plugspace=" http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed>';
str += '</object>';
document.getElementById(elm).innerHTML = str;
}
函数insertFlash(elm, url, w, h)的四个参数分别代表网页中元素名称,Flash动画文件路径地址,Flash动画要显示的长和宽。
2,需要显示Flash的网页文件引用该JS文件
<script type="text/javascript" src="flash.js"></script>
3,如何显示Flash动画。刚才说了是定义定义命名一个网页元素。应用JavaScript中定义的函数进行innerHTML操作
<div id="testflash"></div>
<script type="text/javascript">
insertFlash('testflash', 'flash/main.swf', 350, 500);
</script>
其中div就是一网页元素,id为“testflash”,则应用函数时代入该名称,其余参数参上说明。
当然,现在来看,我们所查看浏览的含有Flash的网页都是网页制作者使用软件生产出来的,目前很多的用户即是使用Dreamweaver,尽管目前Dreamweaver已经到了Dreamweaver CS3(Dreamweaver 9),但仍有很多用户使用早期版本,Dreamweaver8的用户居多,但同时需要注意:将您的Dreamweaver 8升级到8.0.2即可解决Flash的“单击激活并使用此控件”。
同样,Dreamweaver在用户插入一个Flash元素到网页中时,Dreamweaver自动生成了一个JS文件:AC_RunActiveContent.js,该文件在网站上传时需同时上传。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-12-18
是IE7 还是IE8?IE7的话在internet属性-安全-internet自定义级别-activex控件和插件-下载未签名的activex控件 改为提示!然后登录网站 下载-下载Shockwave PlayerIE8没用过!