欢迎访问:常州市武进区嘉泽中心小学网站 !今天是:
栏目列表
您现在的位置是:首页>>教师>>计算机技术>>网站制作技术>>文章内容
怎么给网页中的FLASH动画加超连接,加事件...
发布时间:2008-11-20   点击:   来源:本站原创   录入者:佚名
 

首先谢谢jnkc

写技术文档是第一次, 没什么经验...
只希望大家能和我一起分享,我的成果.
可能用语方面不是很正规,要兄弟们费神了,
请高手们多多指点............
好了,费话不多说了... 进入正题.


在论坛上面,看到了好多帖子,是关于FLASH的有30%(可能有点夸张..)
是"怎么在网页中插入的Flash上加超连接","如何让Flash接受相应的单击事件等"
这类的问题. FLASH可能是点特殊吧,不能直接用<a></a>来设置超连接...
也不能直接加入事件,所以才有这些问题的出现.

在搜集的相关的资料,加上自己的测试后.终于可以给以上问题个答复了.
我先把研究后的代码贴出来,然后在进行分析.

 

<div  style="z-index:-1">  <!--1.设置FLASH为底层-->
     <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="" width="200" height="115">
    <param name="movie" value="media.swf">
  <param name="quality" value="high">
  <embed src="media.swf" quality="high" pluginspage="" type="application/x-shockwave-flash" width="200" height="115"></embed>
  <param name="wmode" value="transparent">  <!--2.必须把FLASH设置为透明-->
</object> </div> 
<div id="huiLayer"  style="cursor: hand; position:absolute; left:10px; top:10px; width:200px; height:115px; z-index:1; visibility:  visible;"><a href="http://{域名已经过期}">
<img src="kong.gif" width="200" height="115" border="0"></a></div> 
<!--如果直接加个透明层的话,我试验过了,是不行.  可能高手们有好的办法..-->
<!--3.所以,我在透明层上加了个透明的图片.就是kong.gif 设置超连接.-->
<!--则,kong.gif 在FLASH的上层,点击连接,连到{域名已经过期}..-->
<!--1.2.3. 是标注的重要点-->

 


首先,我们肯定是要先插入FLASH.因为,Flash默认是最高层.所以,
就会出现Flash把下拉菜单挡住了.
把Flash文件放到一个层中,设为最底层,FLASH设为透明.
<div style="z-index:-1">   <!--1.设置FLASH为底层-->
     <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="" width="200" height="115">
    <param name="movie" value="media.swf">
  <param name="quality" value="high">
  <embed src="media.swf" quality="high" pluginspage="" 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://{域名已经过期}">
<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" ...........

源程序下载


附件:
关闭窗口
打印文档
账号登录
保持登录 忘记密码?
账号与武进教师培训平台同步