我为一个网站制作了背景动画。动画对光标位置作出反应。它是通过处理创建的。我通过画布元素把它放在了网站上。
现在我想在动画上面放一些html元素,主要是文本和一些简单的彩色div容器。我设法用属性position和z-index做到了这一点。
但现在,当然,如果光标在一个较高的z-index元素上,画布元素中的处理动画将不再对光标做出反应。
有没有一种方法可以让每个元素(无论其z位置如何)对光标做出反应?
我确信上次我看的时候有一个帮助我的答案,但既然它不见了,我会自己写一个答案来结束这个问题。感谢消失答案的创造者!
上一个答案建议通过上级元素的事件触发所需事件。这是有效的。
在我处理的特定问题中,最好的解决方案是将事件侦听器的触发器从processing.js中包含处理文件的canvas元素更改为窗口。
例如,鼠标移动事件(通常):
//In the processing.js file, line 8332
attachEventHandler(curElement, "mousemove", function(e) {
...
}
改为以下工作刚刚好:
//In the processing.js file, line 8332
attachEventHandler(window, "mousemove", function(e) {
...
}