Kunjammu Ответов: 1

Найти точный элемент наведения мыши в jquery


У меня есть как ниже

<td>
<span class="class1"><a> Add </a></span>
<span class="class2"><a> Edit</a></span>
</td>


Я должен выяснить, на каком промежутке я завис, и я хочу получить имя класса

Любая помощь оценена по достоинству

Что я уже пробовал:

я пробовал с e.target, но я получаю только td

1 Ответов

Рейтинг:
2

Richard Deeming

Событие.цель[^] возвращает элемент, который вызвал событие. Если ваша мышь находится над одним из <a> теги, тогда это будет целью.

Событие.currentTarget[^] возвращает элемент, к которому был присоединен обработчик. Если вы прикрепили обработчик событий к <td> элемент, значит currentTarget всегда будет возвращать свое <td> элемент, даже если ваша мышь была над дочерним элементом.

Цель никогда не вернет его. <span>, так как нет никакого способа для мыши, чтобы быть над <span> не будучи также над Ан <a>.

Вместо этого вам нужно будет использовать target недвижимость, чтобы получить <a>, и идите вверх по дереву DOM, пока не найдете <span>.

Например, с помощью jQuery:

$(document).on("mouseover", "td", function(e){
    var className = $(e.target).closest("span").prop("class");
    ...
});
Демонстрация[^]