禁用javascript中flash嵌入/对象标记的单击和鼠标事件
我的页面上有一个flash对象,我想使用Javascript禁用对它的点击。我尝试使用以下代码:禁用javascript中flash嵌入/对象标记的单击和鼠标事件,javascript,flash,events,click,Javascript,Flash,Events,Click,我的页面上有一个flash对象,我想使用Javascript禁用对它的点击。我尝试使用以下代码: document.getElementById('flash-obj').onclick = function(){return false;}; document.getElementById('flash-obj').onmouseup = function(){return false;}; document.getElementById('flash-obj').onmousedown =
document.getElementById('flash-obj').onclick = function(){return false;};
document.getElementById('flash-obj').onmouseup = function(){return false;};
document.getElementById('flash-obj').onmousedown = function(){return false;};
它不起作用。还有其他选择吗?任何例子都将不胜感激
干杯
Nyo我认为实现您想要的唯一方法是在flash对象顶部使用绝对定位元素。同样的技术也用于防止在iframe而不是主文档中触发鼠标事件。您可以使用外部接口,如下所示: 在flash中,注册回调:
if (ExternalInterface.available)
{
flash.external.ExternalInterface.addCallback("myExternalMethod", myFunction);
}
function myFunction():void
{
myObj.removeEventListener(MouseEvent.CLICK, someFunction);
}
在JS中,调用Flash方法:
document.getElementById('flash-obj').myExternalMethod();
是的,这是一个正确的解决方案,但前提是我可以访问flash代码。然而,我不知道,我正在寻找一个只脏的Javascript解决方案。无论如何,谢谢你的回答,在任何其他情况下,你的方式都是正确的。是的,你是正确的。虽然我描述的代码在某些情况下可以工作,但它仍然不能在所有情况下工作。唯一(仅javascript)的方法是使用透明的绝对定位div。因此,我接受您的解决方案。