2012-11-03 48 views
1

下面的脚本提供了任务,但我需要它运行另外20次左右。我怎样才能优化脚本,所以我不需要一遍又一遍地调用相同的脚本?优化JQuery SmoothScroll脚本

“a1”变为“a2”,“a3”等。 “#thing”也需要改变,因此它可以滚动到页面

$(document).ready(function() { 
$(".a1").click(function() { 
     $('html,body').animate({ 
     scrollTop: $("#thing").offset().top 
    }, 500); 
}); 

回答

1

类似的东西可以做的工作,我认为的另一部分:

var cnt = 0; 
$(".a1").click(function() { 
     $('html,body').animate({ 
     scrollTop: $("#schoonmaak").offset().top 
    }, 500, function() { 
     if (cnt++ > 20) $(".a1").click(); 
}); 

编辑 - 你的问题编辑取得了之后,我认为这会解决你的问题:

var items = $('body ul li[id]'); 
$('.nobackground h2 a').each(function(i){ 

    $(this).click(function() { 
    $('html,body').animate({ scrollTop: $(items[i]).offset().top}, 500); 
    }); 

}); 
+0

谢谢,但我不清楚我想要什么。 “a1”变为“a2”,“a3”等。 “#schoonmaak”也变成了别的东西。 –

+0

检查我的编辑 - 应该在你的情况下正常工作。 – Reflective

+0

你是最棒的!谢谢! –