我正在使用此脚本
jQuery(document).ready(function($) {
$(".scroll").click(function(event){
event.preventDefault();
$('html,body').animate({scrollTop:$(this.hash).offset().top}, 2000);
});
});
为了在单击导航元素时平滑向下滚动...问题是如果在页面加载完成之前单击链接,则完成后页面将再次返回顶部。
我以为event.preventDefault();是为了避免这种情况。请帮助。
答案 0 :(得分:0)
您应该使用document.onLoad事件。
在将所有HTML下载到文档中并准备好进行解析后调用document.ready。
另一方面,在将所有图像/资源加载到页面中之后调用onLoad。
如果您等待此事件,那么您应该有所需的结果。虽然在那之前它们没有任何点击功能。
此外,preventDefault不会避免这种情况。所有这一切都是禁用您应用它的元素的默认操作。所以它阻止了你的'滚动'元素的默认动作