ekc*_*one 5 javascript mousemove
我如何在指针事件无div上触发mousemove事件,我无法编辑页面的html,只能编辑javascript(银行)
<h1>title</h1>
<div class="wrapper">
<h3>element 1</h3>
<h3>element 2</h3>
</div>
Run Code Online (Sandbox Code Playgroud)
该脚本当前仅触发主体作为目标,而不是元素
document.body.addEventListener("mousemove", function(e) {
console.log(e.target)
})
Run Code Online (Sandbox Code Playgroud)
我想这就是你要找的。一旦鼠标移动到带有类包装器的 div 内的任何内容上,它就会记录下来。
let wrappers = document.getElementsByClassName("wrapper");
for ( let i = 0; i < wrappers.length; i++ ) {
wrappers[ i ].style.pointerEvents = "auto";
wrappers[ i ].addEventListener( "mousemove", function(e){
console.log( e.target );
});
}Run Code Online (Sandbox Code Playgroud)
.wrapper {
pointer-events: none;
}Run Code Online (Sandbox Code Playgroud)
<h1>title</h1>
<div class="wrapper">
<h3>element 1</h3>
<h3>element 2</h3>
</div>Run Code Online (Sandbox Code Playgroud)
编辑:您可以使用 JavaScript 覆盖包装器的 CSS 类,将指针事件设置为 auto,否则鼠标事件在 CSS 中设置为 none 时将不起作用。