如何使用jQuery取消绑定超链接

时间:2011-03-23 15:22:53

标签: jquery hyperlink

是否可以取消绑定超链接的默认行为?

我从其他问题中学到了unbind只能用于与jQuery绑定的函数。我想这可能是它无法正常工作的原因。

jsFiddle

4 个答案:

答案 0 :(得分:3)

您可以使用event.preventDefault阻止默认行为,也可以从事件处理程序返回false

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

// or

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

Demo →

正如您所怀疑的那样,您无法使用unbind()因为没有侦听器可以取消绑定。

答案 1 :(得分:3)

$('myDiv').unbind('click') - 如果它是通过JavaScript连接的

$('myDiv').attr('onclick','') - 如果它有内联事件

$('myDiv').attr('href','javascript://') - 创建一个无效的虚拟链接

答案 2 :(得分:0)

$("#buttonId").click(function() { return false; });

答案 3 :(得分:0)

你可以尝试将所有事件类型绑定到它并使用event.preventDefault()来停止这样的默认行为:

$('a').bind('touchstart touchmove touchend mousedown click mouseup select',function(e){
e.preventDefault()
})