Перемещение мыши по событиям-указателям - PullRequest
0 голосов
/ 20 ноября 2018

Как мне вызвать событие mousemove для указателя-события none div, я не могу редактировать HTML страницы, только javascript (банковское дело)

<h1>title</h1>
<div class="wrapper">
  <h3>element 1</h3>
  <h3>element 2</h3>
</div>

скрипт в настоящее время только вызывает телов качестве цели, а не элемента

document.body.addEventListener("mousemove", function(e) {
  console.log(e.target)
})

https://codepen.io/anon/pen/PxOMQL

1 Ответ

0 голосов
/ 20 ноября 2018

Я думаю, это то, что вы ищете.Когда мышь перемещается по всему, что находится внутри 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 );
    });
}
.wrapper {
 pointer-events: none; 
}
<h1>title</h1>
<div class="wrapper">
  <h3>element 1</h3>
  <h3>element 2</h3>
</div>

РЕДАКТИРОВАТЬ: Вы можете перезаписать класс CSS-оболочки с помощью JavaScript, чтобы установить указатель-события на авто, иначе события мыши не будут работать, пока онв CSS не имеет значения.

...