質問する
2988 次
3 に答える
5
this
の代わりに使用しevent.target
ます。
var href = this.href;
event.target
クリックされた最も深くネストされた要素ですthis
ハンドラーがバインドされている要素です(または、のような委譲の場合は.live()
、セレクターに正常に一致した要素です)
于 2012-04-09T20:30:34.023 に答える
3
このようにhref値を取得します
$('a').live('click', function(){
var target=$(this).attr("href");
alert(target);
});
JsFiddle サンプルhttp://jsfiddle.net/Gz6mT/7/
jQuery 1.7 以降を使用している場合は.on()
、ライブの代わりにイベント ハンドラーをアタッチするために使用します。live() は jQuery 1.7 で非推奨になりました
于 2012-04-09T20:31:03.963 に答える
1
まず、.on
(利用可能な場合) を使用する必要があり、さらに悪い場合.delegate
は.live
. href
それ以外に、ターゲットではなくイベントがバインドされているオブジェクトからを取得できます。
var href = $(this).attr('href');
本当にターゲットを使用したい場合は、最も近いアンカーの親を見つけることができます:
var href = $(event.target).closest('a').attr('href');
于 2012-04-09T20:33:02.843 に答える