javascript - div 正在阻止鼠标事件

标签 javascript jquery dom-events mouseevent

我在富 html 应用程序中遇到鼠标事件的一些问题。

我有一个很大的“半透明”div 覆盖了屏幕的一半(该死的设计师)。我们称他为 A。

在这个A div的后面,有一个叫B的大容器。

在 B 内部,有 4 个 div 应该响应 mouseovermouseout 事件。我们可以称它们为 C1、C2、C3 和 C4。

不幸的是,大胖子 A div 阻止了我所有的 Javascript/jQuery 事件。

这可以通过一些变通办法解决,但问题是:

  • 这个错误出现在一个自制的 Javascript 引擎中。我知道 B,但我不应该知道 B 中的 C 元素(或它们的 ID)。 所以我既不能使用坐标技巧,也不能使用 if/else 解决方法。
  • 该应用程序应该在电视上运行(在一个奇怪的歌剧版本中)。所以没有“指针事件”CSS 技巧。
  • 请不要告诉我重新设计我的应用 :)

我尝试处理(使用和不使用 jQuery)来自 A 的事件并将其触发给 B。它可以工作,但 B 不会将它转发给它的 C 子级,再一次,我事先不知道它们.

最佳答案

这就是你要做的。大多数browsers支持 CSS pointer events .

在这些浏览器上使用:

#big-blocking-div {
  pointer-events: none;
}

对于不支持此 css 功能的浏览器执行此操作

#big-blocking-div {
  display : none;
}

关于javascript - div 正在阻止鼠标事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21003293/

相关文章:

javascript - Firefox 错误,拖动事件给 dataTransfer.files = null,在所有其他浏览器中定义

javascript - html 表中可编辑字段的更改事件仅影响顶行计算字段

javascript - uploadify - 限制单个文件上传

javascript - Facebook 标签(在文本区域内突出显示)

javascript - 当鼠标移动太快时,鼠标悬停和鼠标移出事件不会触发?

Javascript 确认对话框

JavaScript:如何确定变量的范围?

javascript - 为什么 for ... in 只显示用 class.prototype 定义的方法?

javascript - 如何在 Javascript 中使用 C# 枚举

javascript - 除了看,还有什么方法可以知道当前在 HTML 元素上应用了哪种字体