jQuery Event.Target Problem - PullRequest
       13

jQuery Event.Target Problem

1 голос
/ 01 октября 2010

Я не знаю, забыл ли я, как это сделать, или это ошибка, но я просто не могу найти ссылку на вызывающего в событии "click", используя jQuery.

I´я делаю следующее:


$(document).ready(function() {
    $('#parent a.item').click(doSomething);
});

function doSomething(e) {
    // Alerts for demostrational purposes only
    alert(e.target);
    alert(e.currentTarget);
    alert(this);
    alert($(this)[0]);
}

Все предупреждения показывают атрибут href гиперссылки (URL страницы + '#').
Я что-то не так делаю?

Примечания: Использование jQuery 1.4.2.

1 Ответ

3 голосов
/ 01 октября 2010

Это потому, что вы оповещаете, поэтому вы видите строковое представление (так как alert() принимает строку) ... что для якоря - href. Вы можете сделать это, например:

alert(e.target); //or perhaps alert(this.target); - alerts the href
alert(e.target.innerHTML);  //or perhaps alert(this.innerHTML); - alerts the html

Вы можете попробовать его / поиграть с ним здесь , обратите внимание, что this и e.target не всегда одинаковы, если щелчок исходил от дочернего элемента, они будут другими .

...