打印本文 关闭窗口 | |
怎么给网页中的Flash上加超连接 | |
作者:未知 文章来源:网络文摘 点击数 更新时间:2006/5/6 12:42:00 文章录入:admin 责任编辑:admin | |
|
|
那直接在flash所在的object元素外部加<a></a>标签来控制不就行了,可能有些人会这么想,思路正确,但是行不通。呵呵,怎么办?百度一下先,呵呵,真是相当佩服某些人的牛脑,真牛,下面是一种解决的方法: 首先,我们肯定是要先插入FLASH.因为,Flash默认是最高层.所以, 我经常会遇见Flash把下拉菜单挡住的情况. 把Flash文件放到一个层中,设为最底层,FLASH设为透明. <div style="z-index:-1"> <!--1.设置FLASH为底层--> <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="200" height="115"> <param name="movie" value="media.swf"> <param name="quality" value="high"> <embed src="media.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="200" height="115"></embed> <param name="wmode" value="transparent"> <!--2.必须把FLASH设置为透明--> </object> </div> 再接下来,就是在FLASH的层上再加上一层, Flash本身不能直接加入onclick.等事件,所以,只能借助别的东西啦. 就是在FLASH上加个透明层, <div id="huiLayer" style="cursor: hand; position:absolute; left:10px; top:10px; width:200px; height:115px; z-index:1; visibility: visible;"><a href="http://www.cnlk.com"> <img src="kong.gif" width="200" height="115" border="0"></a></div> 论坛上面,给了一些解决方法,就是加个透明的层,但是,如果光有个透明层, 还是不能接受事件的. 更确切地说,是一部分可以,一部分不可以,和FLASH部分重叠的那一部分不行. 为什么不行.说实话,我也不清楚,我是试验得出来的... 当我把这个层的背景颜色设为任意一种时,不是透明时,发现.可以接受事件了,在层上加了个 超连接,也可以.. 但是,这还不是我们要的结果.因为,把整个"精美"的FLASH给遮盖了.. 所以,有<img src="kong.gif" width="200" height="115" border="0"> 我用PhotoShop做了个透明的图片kong.gif 大小都可以,但是必须是透明的!这样 才不至于把底下的FLASH给遮盖住了. 试验了一下... 成功了... 点击FLASH.其实是击中了FLASH上层的透明图片kong.gif 图片,就可以接受很多事件啦,onclick , onmouseover ,onmosueout ...... 给图片加个<a></a>超连接是再简单不过的事啦.. 这时,以上的问题是不是都解决了,把事件都给kong.gif接受! 单击事件, <div onclick="ok()" id="huiLayer" ........... 不管是坐火车,还是飞飞机,过年都得回家,所以方法还是有的,Flash本身还提供了一种方法,相当的好用,就是在Flash内部通过FSCommand调用外部的脚本,个人认为这种方法简单实用,可控能力强,具体用法,就不在这里多说了,你在网上搜FSCommand关键键字就会啊到很多实例,不过还是有一点提示:在提供javascript版本的调用方法时,最好也提供一个vbscript的版本,否则调用可能会不成功。 |
|
打印本文 关闭窗口 |