web嵌入flash添加onclick事件

  由于嵌入的flash不属于dom管辖范畴,因此不能直接在flash中添加onclick事件。首先想到的是将falsh嵌入一个div,然后在div中添加onclick事件,以为很简单就能实现,可是运行后发现根本不是那么回事,flash默认不接受事件,百度了下,可以将flash的wmode属性设置为"transparent",但是部分浏览器不支持其接收onclick事件,因此用onmousedown来代替,勉强算是解决了问题,如下:

1 <div onmousedown="javascript:alert('')">                
2 <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase=" [url]http://download.macromedia.com/pub/shockwave/cabs/flash/swfl[/url] ash.cab#version=6,0,29,0" width="517" height="72">
3 <param name="movie" value="../Style/gaojiao/2.swf">
4 <param name="wmode" value="transparent">
5 <param name="quality" value="high">
6 <embed src="../Style/gaojiao/2.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="517" height="72"></embed>
7 </object>
8 </div>

后来又一想,是不是可以在flash上面覆盖一层透明的覆层,这样也许能解决此问题,百度了下,倒是搜到了,没有亲自尝试过,不知道会不会覆盖flash的效果,如鼠标放到flash上面动态效果会不会消失等,有时间验证下,如下:

1 <div   style="z-index:9999; position: absolute; width: 714px; height: 90px; left: 0px; top: 0px; cursor: pointer;  opacity: 1;  filter:alpha(opacity=1);">   
2 <a target="_blank" href="http://g.cn">
3 <img style="border:0px " src="spacer.gif" width="714" height="90" />
4 </a>
5 </div>



posted @ 2011-10-21 10:32  子夜一梦  阅读(2276)  评论(0)    收藏  举报