Проблема зависания jQuery из-за z-индекса - PullRequest
18 голосов
/ 19 августа 2010

Я хочу вызвать событие наведения для элемента, используя jQuery, но у меня есть полупрозрачный png, расположенный над элементом, используя z-index.Есть ли способ сказать jQuery игнорировать png и вызвать событие наведения для элемента под ним?

1 Ответ

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

Если вы используете современный браузер, который поддерживает css3, попробуйте добавить эту строку в правило css для прозрачного png: pointer-events: none;
В основном он говорит браузеру игнорировать все события мыши в этом элементе.

Например:

img
{
    pointer-events: none;
}

https://developer.mozilla.org/en/css/pointer-events

В качестве альтернативы, если целевой браузер не поддерживает css3, вы можете захватить событие мыши, а затем запустить новое на базовом элементе.

например, если ваш идентификатор изображения #img и ваш базовый идентификатор элемента #elem, вы можете сделать это:

$("#elem").hover(function(e){
     $("#img").mouseenter(e);
});

Возможно, вам придется немного поэкспериментировать с этим,ваши DOM настроены, вот документация http://api.jquery.com/mouseenter/

...