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