有人可以帮助我理解为什么这不起作用:
jQuery(".page-code .opening .button").click(function(event){
event.preventDefault();
var id = "#" + event.target.id;
alert(id);
jQuery('html, body').animate({
scrollTop: jQuery(id).offset().top
}, 500);
})
锚点链接存在于页面的各个部分,警报给我提供了我需要的正确ID,但无论我点击哪个按钮,页面只会滚动一点点。不知道我在这里失踪了什么。
答案 0 :(得分:1)
您正在将滚动的目标设置为刚刚单击的元素。如果要滚动到链接指向的元素,则需要使用href属性(假设您的按钮为a
标记):
jQuery(".page-code .opening .button").click(function(event){
event.preventDefault();
var id = "#" + jQuery(this).attr('href');
alert(id);
jQuery('html, body').animate({
scrollTop: jQuery('body').offset().top
}, 500);
})
答案 1 :(得分:0)
如果您想要该用户,请单击.page-code或.opening OR .button元素,然后在它们之间添加逗号。