我正在尝试使用一些 jQuery 来浏览具有增量类的部分。但我的 jQuery 代码看起来不对。控制台中有这样的消息
TypeError: nextSection.offset(...) is undefined
这是我的代码:
for(var i = 0; i < 11; i++) {
$('.project-' + i + '> .arrows > .arrow-bottom').click(function() {
$('html, body').animate({
scrollTop: $('.project-' + i+1).offset().top()
}, 750);
});
有人知道为什么它不起作用吗?
谢谢!
最佳答案
问题可能出在闭包上,尝试将代码更改为:
for (var i = 0; i < 11; i++) {
(function(j) {
$('.project-' + j + '> .arrows > .arrow-bottom').click(function() {
$('html, body').animate({
scrollTop: $('.project-' + (j + 1)).offset().top()
}, 750);
});
}(i));
}
您可以引用这篇文章了解有关关闭及其工作原理的更多信息, How do JavaScript closures work?
关于javascript - jQuery 增量麻烦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42752483/