我制作了一个单页网站,每个 div 占页面的 100%。
目前我有一些代码将用户带到页面,一次一个 div。
$(".box1").click(function(e){
$('html, body').animate({scrollTop:$('.box2').offset().top }, 'slow');
});
$(".box2").click(function(e){
$('html, body').animate({scrollTop:$('.box3').offset().top}, 'slow');
});
$(".box3").click(function(e){
$('html, body').animate({scrollTop:$('.box4').offset().top}, 'slow');
});
$(".box4").click(function(e){
$('html, body').animate({scrollTop:$('.box5').offset().top}, 'slow');
});
我可以让用户每次都单击同一个 div(.arrow),而不是让用户每次单击不同的 div(box1、box2 等)吗?
我已经尝试过了,用户单击.arrow
以通过循环:
var boxes = ["box1", "box2", "box3", "box4"];
for (i = 1; i > boxes.length; i++) {
$(".arrow")click(function(e){
$('html, body').animate({scrollTop:$(boxes[i]).offset().top}, 'slow');
});
}
然而,这没有响应,并且根本不会滚动。有谁知道这个循环有什么问题?