javascript - 嵌入的 Flash 对象不会捕捉到 Internet Explorer 上的点击(尽管 wmode)

标签 javascript html css flash embed

我想在我的页面上的嵌入 Flash 对象上使用 javascript 捕捉点击。我使用了 wmode="opaque"(也尝试过透明)并设置了较低的 z-index。我尝试捕捉对 div、对象元素和嵌入元素的点击。
在 FF (5) 上,它们三个都起作用。在 IE(7 和 8)上,它们都不起作用。

这是我的代码(我删除了 flash 的一些属性,如 type 或 classid):

<div onclick="javascript:alert('div.click');" style="z-index:10;">
    <object onclick="javascript:alert('object.click');" style="z-index:1;">
        <param value="flash.swf" name="movie">
        <param value="opaque" name="wmode">
        <embed onclick="javascript:alert('embed.click');" wmode="opaque" src="flash.swf">
    </object>
</div>

第二种方案

A 还尝试将 div 放在带有“top:-100px;”的对象元素之后在闪光灯上处于领先地位。在 IE 中,如果 div 是纯色(如 bg-color:red),它会起作用,但如果它有透明背景,则不起作用:

<object onclick="javascript:alert('object.click');" style="z-index:1;">
    <param value="flash.swf" name="movie">
    <param value="opaque" name="wmode">
    <embed onclick="javascript:alert('embed.click');" wmode="opaque" src="flash.swf">
</object>
<div onclick="javascript:alert('div.click');" style="height:100px; top:-100px; position:relative; background-color:Transparent; z-index:10;">
</div>
  • 我有机会让它与 Internet Explorer 一起工作吗?谢谢。

最佳答案

修改 div,使其具有背景颜色设置和透明(实际上使用不透明度)。点击将在 div 元素内发生。在 ie、chrome、ff 中运行良好。

background-color: white;
opacity: 0;
-moz-opacity: 0;
filter: alpha(opacity = 0);

关于javascript - 嵌入的 Flash 对象不会捕捉到 Internet Explorer 上的点击(尽管 wmode),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6788780/

相关文章:

javascript - 在 Flask 应用程序中从 json 加载数据

javascript从客户端保存/加载图像+文本数据

html - 如何在 HTML 站点上安装自定义字体

html - 这个 <tr> 高度从哪里来?

javascript - 如何使用 cheerio 生成 javascript 变量的内容(jquery 类似选择器,但没有 dom)

javascript - 创建浏览器指纹

html - 具有 "overflow: hidden"溢出祖 parent 边缘的 Flexbox child

javascript - 当 value = 声明时禁用 href 标签

javascript - 一个JS函数分别翻转两个div

html - 如何使用CSS将图像变成黑色并使文本出现在悬停时?