Как выяснить, на что нажали? - PullRequest
0 голосов
/ 19 февраля 2009

Как узнать, в каком объекте щелкнули мышью в jquery?

Есть ли способ предупредить (...) тип тега? например, если это был <a href> или <img> и т. д.?

Ответы [ 5 ]

3 голосов
/ 19 февраля 2009

Объект, по которому щелкнули, передается в обработчик щелчка как this. Вы можете узнать тип элемента с помощью nodeName. Как это:

function handle_click() {
   var clicked_element = this;
   alert(clicked_element.nodeName);
}
$("#mylink").click(handle_click);
2 голосов
/ 19 февраля 2009

Ответ Магнара правильный, если вы хотите знать, к какому типу элемента обработано событие (к которому вы прикрепили событие). Если вы хотите точно знать, какой элемент был выбран, включая его дочерние элементы, вам необходимо свойство event.target . Используя пример Магнара:

// show the type of the element that event handler was bound to
function handle_click() {
    var clicked_element = this;
    alert(clicked_element.nodeName);
}

// show the type of the exact element that was clicked, which may be a child
// of the bound element
function handle_child_click(e) {
    var clicked_element = e.target;
    alert(clicked_element.nodeName);
}

// show the type of the element that matches "#myLink"
$("#mylink").click(handle_click);

// show the type of the element that matches "#myLink" or any of its children
$("#mylink").click(handle_child_click);
0 голосов
/ 19 февраля 2009

Возможно, это не то, что вам нужно, но я нашел этот урок интересным: http://css -tricks.com / tracking-клики-сборка-клик-карта-с-php-and-jquery /

0 голосов
/ 19 февраля 2009

Может объявить событие onclick, чтобы предупредить атрибут

<p id='pWoo' onclick='alert(this.id);'>Woo</p>

Не относится к jquery.

0 голосов
/ 19 февраля 2009

Посетите сайт jquery docs !

В частности, событие Click

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...