Posted in Javascript onJune 09, 2013
今天要给星烛网上的一个Flash加一个超链接,原想直接在object外直接套一个超链接即可,试了之后却发现不是这么回事,求助百度,问题解决,记录如下:
原因:Flash默认是最高层.所以,我经常会遇见Flash把下拉菜单挡住的情况,及其它原素覆盖掉.
解决方案:
第一种:步骤如下
1. 把Flash文件放到一个层中,设为最底层,FLASH设为透明.
<div class="ad_top" style="text-align:center;"> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="948" height="93" id="flashlogo" > <param name="movie" value="../../templets/content/images/slogan.swf"> <param name="quality" value=high> <embed src="../../templets/content/images/slogan.swf" quality=high width="948" height="93" name="flashlogo" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"> </embed> <STRONG><SPAN style="COLOR: #cc0000"><param name="wmode" value="transparent" /></SPAN></STRONG> </object></div>
2. 在FLASH的层上再加上一层,Flash本身不能直接加入onclick.等事件,所以,只能借助别的东西啦.就是在FLASH上加个透明层:
<div id="huiLayer" style="cursor: hand; position:absolute; top:142px; width:948px; height:93px; z-index:1; visibility: visible; text-align:center;"><a href="http://www.xzrj.net" target="_blank"> <img src="http://www.xingzhu.net.cn/templets/content/images/transpanrent.gif" width="948" height="93" border="0"></a></div>
说明:transpanrent.gif要是透明的,否则会给底下的Flash盖住;
3. IE浏览器到上面一步就可以了,Firefox还需要下面一步
在embed里加上
wmode="transparent"
完整代码如下:
<div class="ad_top" style="text-align:center;"> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="948" height="93" id="flashlogo" > <param name="movie" value="../../templets/content/images/slogan.swf"> <param name="quality" value=high> <embed src="../../templets/content/images/slogan.swf" quality=high width="948" height="93" name="flashlogo" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" wmode="transparent"> </embed> <param name="wmode" value="transparent" /> </object> </div> <div id="huiLayer" style="cursor: hand; position:absolute; top:142px; width:948px; height:93px; z-index:1; visibility: visible; text-align:center;"><a href="http://www.xzrj.net" target="_blank"> <img src="http://www.xingzhu.net.cn/templets/content/images/transpanrent.gif" width="948" height="93" border="0"></a></div>
第二种方案,网上找的没有试,如下:
就是在Flash内部通过FSCommand调用外部的脚本,方法简单实用,可控能力强,具体用法,请在网上搜FSCommand关键键字
给Flash加一个超链接(推荐使用透明层)兼容主流浏览器
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@