我在一个div内放了一个嵌入式Flash电影,在主div上放了一个javascript onclick事件处理程序,但是没有捕捉到点击,这是怎么回事?
码:
<div id="top-box-player" onclick="alert('Hi Bananas!');"> <object width="400" height="300"> <param name="movie" value="general.swf"> <embed src="./swf/general.swf" width="400" height="300"> </embed> </object> </div>
最好将所有swf都视为z阶无穷大。Flash是最重要的,只有很少的事情可以阻止它。另一方面,如果您可以访问SWF本身的代码,或者可以使用另一个SWF加载当前的SWF,则可以使用几个不同的Flash命令来处理页面的JavaScript。 。(ExternalInterface是您最好的选择)。
//This is what your AS code should look like: import flash.external.ExternalInterface; import flash.events.MouseEvent; root.addEventListener( MouseEvent.CLICK, useExternal, true ); function useExternal( event:MouseEvent):void { //swfClickFunction is defined in JavaScript ExternalInterface.call( "swfClickFunction" ); }
下面的达尔文提供了另一个使用onmousedown而不是onclick的替代解决方案。