jQuery革除超链接的click事件

jQuery解除超链接的click事件

jQuery的 unbind 方法并不能解除超链接(即a标签)的click事件,如果想让超链接的默认click事件不发生需要如下处理:

$('#some-link-id').click(function (event)
{
    event.preventDefault();
});

// or

$('#some-link-id').click(function ()
{
    return false;
});

 参见How to unbind a hyperlink with jQuery

 

这样重写了超链接的click事件出发的动作后,可以在为这个超链的click动作绑定其他事件。比如我就需要让打开的窗口最大化,所以我就会这么做(在执行了上面的某种解除默认动作的代码后):

$('#some-link-id').click(function(){
    var href = j(this).attr('href');
    window.open(href,'','channelmode=yes,fullscreen=yes,menubar=yes');
});

 

 

参考内容:

 

  • W3C School 中文 HTML DOM open() 方法
  • stackoverflow.com  How to unbind a hyperlink with jQuery