我有这个脚本:
$('.blog-list li').click(function(e) {
e.preventDefault();
$('body').scrollTo('.section:eq(1)', 800);
});
当您单击列表项时,您现在将转到section:eq(1)
. 我想改变这个脚本。当您单击第一个列表项时,您将转到第一部分。
当您按下第二个列表项时。你要去第二部分等。我该怎么做?
我有这个脚本:
$('.blog-list li').click(function(e) {
e.preventDefault();
$('body').scrollTo('.section:eq(1)', 800);
});
当您单击列表项时,您现在将转到section:eq(1)
. 我想改变这个脚本。当您单击第一个列表项时,您将转到第一部分。
当您按下第二个列表项时。你要去第二部分等。我该怎么做?
使用此代码:
$('.blog-list li').each(function (i) {
$(this).click(function () {
$('body').scrollTo('.section:eq(' + i + ')', 800);
});
});
$('.blog-list li').click(function(e) {
e.preventDefault();
$('body').scrollTo('.section:eq(' + $('.blog-list li').index(this) + ')', 800);
});
这是我对形势的看法
$('.bloc-list li').each(function(index,element){
$(element).click(function(e){
e.preventDefault();
$('body').scrollTo('.section:eq(' + index + ')', 800);
});
});
$('.blog-list li').click(function(e) {
e.preventDefault();
$('body').scrollTo('.section:eq('+$(this).index()+')', 800);
});
此方法通过将调用动态替换为调用:eq
该函数的项目的索引来工作,在这种情况下,您的列表项使用$(this).index()
.