Определение элемента ниже event.target в js - PullRequest
2 голосов
/ 19 августа 2010

Я пытаюсь определить плитку, над которой в данный момент наведена мышь, на карте OpenLayers. Код, который в настоящее время написан - использует стандартный обработчик Hover и просто отправляет событие назад - работает в Chrome, но не работает в Firefox, потому что элемент SVG находится между плиткой и мышью. Я уверен, что нечто подобное может произойти в IE с VML.

Итак, вопрос в том, как определить элемент, над которым находится мышь, если этот элемент «заблокирован» другим элементом, который в настоящее время является целью этого запроса? Или, возможно ли «перезапустить» событие, используя trigger () в другом div, и получить новую цель для имитации того же самого? В противном случае с помощью OpenLayers трудно и неэффективно определить изображение с определенной координатой пикселя.

Ответы [ 3 ]

3 голосов
/ 20 августа 2010
0 голосов
/ 19 августа 2010

Я не уверен, но, возможно, вам поможет метод document.elementFromPoint, см .: метод elementFromPoint

0 голосов
/ 19 августа 2010

AFAIK, нет эффективного способа определить, какие элементы находятся под мышью; Вы должны получить позицию x / y из события (event.pageX/Y) и сравнить ее с позицией / размером каждого элемента на странице.

...