1

複数のタグ (またはその他のタグ) を同じハンドラーにバインドしようとしています。どのタグがクリックされたかをハンドラーが検出し、それに応じて動作するようにします。

例:

<a class="menu">Item1<a>
<a class="menu">Item2<a>
<a class="menu">Item3<a>

$(".menu").click(function(){
    //...Find out which a was clicked...
    ($(a .menu).html()=='Item1)

}

これを行う最善の方法は何ですか?これを、Apache の VirtualHosts セクションと同様に動作させたいと考えています。これを行うことさえ可能ですか?

4

2 に答える 2

3

jQuery を使用します$(this)

$(".menu").click(function(){
    $(this).html('Item1');
}

ここにjQueryとの違いがあります:「$(this)」と「this」の違いは何ですか?

于 2013-01-30T21:47:55.740 に答える
2

thisキーワードは、イベントをトリガーした要素になります。

$(".menu").click(function(){
    var clickedItem = this;
    alert(clickedItem.innerHTML);
}

必要に応じて、それを jQuery オブジェクトにラップできます。

$(".menu").click(function(){
    var clickedItem = $(this);
    if (clickedItem.text() === 'Item1') {
        alert('It was item 1');
    }
}
于 2013-01-30T21:47:44.740 に答える