0

次のコードを検討してください。

$('#main').on('click', 'a', function() {
    console.log($(this));
});

$(this)クリックされたものではなく、常に#main要素に対応します。クリックされた<a>を取得するにはどうすればよいですか?<a>

ありがとう!

編集:

申し訳ありませんが、皆さんは正しいようです:http://jsfiddle.net/R2rJU/1/

私の問題は、2 番目のセレクターの結果を変数に保存して、セレクターとして使用できなくなったことです。

4

3 に答える 3

1

this<a>タグのクリックハンドラを参照します。だからあなたは正しいことをしている

明示的に使用したい場合は、event.target Event.Targetを使用できます

 $("#main").html("clicked: " + event.target.nodeName);
于 2013-06-16T14:21:02.803 に答える
0

いいえ、何かを間違えているようです。thisクリック イベント ハンドラ内でクリックされる DOM 要素を常に参照します。

于 2013-06-16T14:19:52.327 に答える