Jquery href click - 如何启动事件?

use*_*451 15 html javascript jquery

我有这个锚点,点击后我想弹出一些东西.此href位于具有其他href的页面内.

<a class="sign_new" href="#sign_up">Sign up</a>
Run Code Online (Sandbox Code Playgroud)

jQuery的:

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

上面的代码没有启动.

Sel*_*gam 35

它不是因为href不是sign_up#sign_up.试试如下,

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

演示: http ://jsfiddle.net/pnGbP/


the*_*dam 8

如果您拥有HTML代码,那么为此href分配id可能是明智之举.然后你的代码看起来像这样:

<a id="sign_up" class="sign_new">Sign up</a>
Run Code Online (Sandbox Code Playgroud)

和jQuery:

$(document).ready(function(){
    $('#sign_up').click(function(){
        alert('Sign new href executed.');
    });
});
Run Code Online (Sandbox Code Playgroud)

如果您不拥有HTML,那么您需要将$('#sign_up')更改为$('a.sign_new').如果你在锚中有一个href并且不希望它被处理,你也可能触发event.stopPropagation()(AFAIR返回false也可以工作).

$(document).ready(function(){
    $('#sign_up').click(function(event){
        alert('Sign new href executed.');
        event.stopPropagation();
    });
});
Run Code Online (Sandbox Code Playgroud)