给网页上的Flash增加上超级链接和各种鼠标事件

  说到这个问题,可能有人就会说,那还不简单,直接用flash的ActionScript中的url方法不就搞定了,那么如果我们的UI人员设计完flash,但flash对应的链结还没有确定或者以后会变更怎么办?我需要的是能够在外部修改flash对应的链结。

  那直接在flash所在的object元素外部加<a></a>标签来控制不就行了,可能有些人会这么想,思路正确,但是行不通。呵呵,怎么办?百度一下先,呵呵,真是相当佩服某些人的牛脑,真牛,下面是一种解决的方法:

  首先,我们肯定是要先插入FLASH,因为Flash默认是最高层。所以,我经常会遇见Flash把下拉菜单挡住的情况。通过把Flash文件放到一个层中,使用CSS将该层设为最底层,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="100" height="100">
    <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="100" height="100"></embed>
    <param name="wmode" value="transparent"><!--2.必须把FLASH设置为透明-->
</object>
</div>

  再接下来,就是在FLASH的层上再加上一层,Flash本身不能直接加入onclick等事件,所以,只能借助别的东西啦。就是在FLASH上加个透明层:
<div id="huiLayer" style="cursor: hand; position:absolute; left:0px; top:0px; width:200px; height:115px; z-index:1; visibility: visible;">
    <a href="http://www.cnlk.com">
        <img src="blank.gif" width="100" height="100" border="0">
    </a>
</div>

  论坛上面给了一些解决方法,就是加个透明的层,但是,如果光有个透明层,还是不能接受事件的,更确切地说是一部分可以,一部分不可以,和FLASH部分重叠的那一部分不行。

  为什么不行?说实话,我也不清楚,我是试验得出来的...当我把这个层的背景颜色设为任意一种时,不是透明时,发现可以接受事件了;在层上加了个超连接也可以.. 但是,这还不是我们要的结果。因为把整个"精美"的FLASH给遮盖了...所以,有<img
src="blank.gif" width="100" height="100" border="0">。我用PhotoShop做了个透明的图片blank.gif,大小多大都可以,我使用的是1像素高,1像素宽,但是必须是透明的!这样才不至于把底下的FLASH给遮盖住了。

  试验了一下... 成功了... 分析一下:如果点击FLASH,其实是击中了FLASH上层的透明图片blank.gif图片,就可以接受很多事件啦,onclick、onmouseover、onmosueout ......给图片加个<a></a>超连接是再简单不过的事啦... 这样,以上的问题是不是都解决了,把事件都给blank.gif接受!

  比如单击事件:<div onclick="ok()" id="huiLayer" ...........

  不管是坐火车,还是飞飞机,过年都得回家,所以方法还是有的,Flash本身还提供了一种方法,相当的好用,就是在Flash内部通过FSCommand调用外部的脚本,个人认为这种方法简单实用,可控能力强,具体用法,就不在这里多说了,你在网上搜FSCommand关键键字就会啊到很多实例,不过还是有一点提示:在提供javascript版本的调用方法时,最好也提供一个vbscript的版本,否则调用可能会不成功。

文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: Flash 超级链接 鼠标事件 blank.gif
相关日志:
评论: 1 | 引用: 0 | 查看次数: -
回复回复vjuke[2009-04-23 01:52 PM | del]
学习了~
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.