答案 0 :(得分:4)
如果您在锚标记上使用click事件,则需要使用preventDefault
。例如:
$('.3').click(function(e){
e.preventDefault();
$('body').animate({
scrollTop: $(".middle").offset().top
}, 2000);
});
有关preventDefault
工作原理的更多信息:jQuery - event.preventDefault()
答案 1 :(得分:2)
在不确切知道问题所在的地方很难知道,但你可能需要e.preventDefault()或e.stopPropagation(),例如
$('.button').on('click',function(e) {
//do something
e.preventDefault(); // stops default button action, e.g. submitting a form
e.stopPropagation(); // stops event bubbling back to parent element
}
return false; /// stops default link action
});
其中.button是触发事件的元素的类。 请注意,这些是您可能遇到的问题的示例,但如果不知道您遇到的问题,我就不能说哪个 - 如果有的话 - 会起作用。
答案 2 :(得分:1)
您可以通过将return false;
添加到jQuery中的click函数来完成此操作。
答案 3 :(得分:0)
当您单独使用表单并单击提交按钮时,通常会发生这种情况,以防止浏览器刷新页面,只需在HTML中执行此操作:
<form onsubmit="return false;">
...
</form>
如果您有刷新页面的按钮链接,请执行以下操作:
$('.myLinkOrButton').click(function(e) {
e.preventDefault();
...
});