18

私はこのアンカーを持っていて、クリックすると何かをポップアップしたいと思います。この href は、他の href を持つページ内にあります。

<a class="sign_new" href="#sign_up">Sign up</a>

jQuery:

$(document).ready(function(){
   $('a[href = "sign_up"]').click(function(){
      alert('Sign new href executed.'); 
   }); 
});

上記のコードは起動しません。

4

4 に答える 4

41

sign_uphref値が ではないため、そうではありません#sign_up。以下のようにしてみてください。href 値の id を示すために「#」を追加する必要があります。

$('a[href="#sign_up"]').click(function(){
  alert('Sign new href executed.'); 
}); 

デモ: http://jsfiddle.net/pnGbP/

于 2013-01-14T21:44:03.527 に答える
9

HTML コードを所有している場合は、この href に ID を割り当てるのが賢明かもしれません。次に、コードは次のようになります。

<a id="sign_up" class="sign_new">Sign up</a>

そしてjQuery:

$(document).ready(function(){
    $('#sign_up').click(function(){
        alert('Sign new href executed.');
    });
});

HTML を所有していない場合は、$('#sign_up') を $('a.sign_new') に変更する必要があります。アンカーに href があり、それを処理したくない場合は、 event.stopPropagation() を起動することもできます (AFAIR return false も機能する可能性があります)。

$(document).ready(function(){
    $('#sign_up').click(function(event){
        alert('Sign new href executed.');
        event.stopPropagation();
    });
});
于 2013-01-14T21:56:57.533 に答える
4

試す:

$(document).ready(function(){
   $('a .sign_new').click(function(){
      alert('Sign new href executed.'); 
   }); 
});

classhref名前/セレクタータイプを混同しました。

于 2013-01-14T21:44:23.487 に答える
0

value を持つhref属性を使用して、clickイベントをアンカーにバインドしています。sign_new

class でアンカーをバインドするかsign_new、 href 値でアンカーをバインドします#sign_up。私は前者の方が好きです。

于 2013-01-14T21:44:33.993 に答える