javascript - 使用 WebGL 时 Div 鼠标悬停事件不会触发

标签 javascript html webgl

我使用一个单独的 div 来容纳一堆较小的 div,每个都用作文本标签。一切都应该位于 WebGL Canvas 之上。

我希望这些标签 div 触发 mouseover 和 mouseout 事件,但我尝试了很多不同的方法,但仍然无法触发这些事件。

使用 Chrome 中的开发者控制台,我可以看到这些函数已分配给 onmouseoveronmouseout 属性,但它们从未被调用。

这是一个codepen包含我从 Damien Clarke fork 的完整 html、js 和 css并且经过非常轻微的修改。我希望将鼠标悬停在标签上时将内容打印到控制台,但什么也没有发生

最佳答案

您的标签样式表中有pointer-events: none;。因此他们没有收到任何事件。

您可以在正确的事件处理程序中使用 preventDefault 获得 pointer-events: none 的大部分效果。 (您可能需要修改您正在使用的标准 Three.js OrbitControls 以获得您想要的确切行为。)

关于javascript - 使用 WebGL 时 Div 鼠标悬停事件不会触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48896155/

相关文章:

javascript - NodeJs 以丑陋的二进制格式接收 UDP 数字

asp.net - 尝试使用 vbscript 显示 SQL 数据库中的数据

javascript - 动态设置 gl_PointSize 作为着色器属性在 WebGL 中不起作用

javascript - webGL 纹理未显示在矩形中

javascript - 将 Emscripten webGL Canvas 保存为 JS 中的图像

javascript - 检查 cookie 是否存在于 javascript 中

javascript - 尝试弄清楚如何按类别 JSON 对随机项目进行排序

javascript - 无法通过 JS 或 jQuery 设置规则 "pointer-events"?

javascript - 这段代码有什么问题(响应式 html-css-js)?

javascript - bootstrap - 动态改变 jumbotron 背景图像