当前位置: 首页 > 面试题库 >

Flash对象上的javascript onclick事件

轩辕晔
2023-03-14
问题内容

我在一个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的替代解决方案。



 类似资料:
  • Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。(W3C) 事件对象会在事件被触发时获得,对象包含了当前事件的一些信息,如点击事件可以获取到点击的位置,键盘输入事件可以获取到按下的键。 1. 获取事件对象 在给 DOM 节点绑定事件时,需要传递一个事件处理器,其本质上是个函数,在事件触发时被调用。 在事件处理器被调用时,默认就会传递一个参数,这

  • 在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的信息。包括导致事件的元素、事件的类型以及其他与特定事件相关的信息。例如,鼠标操作导致的事件对象中,会包含鼠标位置的信息,而键盘操作导致的事件对象中,会包含与按下的键有关的信息。所有浏览器都支持event 对象,但支持方式不同。 13.3.1 DOM中的事件对象兼容DOM 的浏览器会将一个event 对象传入到

  • 有没有一种方法我可以做类似以下的事情?:

  • transactionIdentifier String - 成功加入队列的事务的唯一标识 transactionDate String - 事务被加入队列的时间 originalTransactionIdentifier String - App Store恢复的事务的标识符 transactionState String - 事务状态, 可以是 purchasing, purchased, f

  • transactionIdentifier String - 成功加入队列的事务的唯一标识 transactionDate String - 事务被加入队列的时间 originalTransactionIdentifier String - App Store恢复的事务的标识符 transactionState String - 事务状态, 可以是 purchasing, purchased, f

  • var elem = document.getElementById('div1'); var clickHandler = function(event){ // TO DO } elem.addEventListener('click',clickHandler,false); event对象包含很多信息 var elem = document.getElementById('div1')