此功能的工作方式:
1)用户点击ID为“surf”的按钮,动画开始
2)函数找到第一个具有“threadboard”类的 div 实例,在那里暂停 1.5 秒,然后平滑向下滚动到具有“threadboard”类的 div 的下一个实例,在那里暂停 1.5 秒,然后平滑滚动到接下来,以此类推
3)该函数应该通过所有具有“线程板”类的 div 实例来执行此操作,然后结束
我正在尝试将 jQuery 与方法, 和scrollTop()
到目前为止each()
混合使用成功。这是我到目前为止所拥有的(编辑:包括工作但不完美的代码):animate()
setTimeout()
var currentIndex = 0;
var numDivs = 18;
$(window).load(function() {
$('#surf').click(
function(){start();}
);
});
function start() {
//if (numDivs > 0) {
var winY = window.screenY;
$("body").animate({ scrollTop: 225 * currentIndex}, 1100);
//
currentIndex = (currentIndex + 1) % numDivs;
setTimeout(start, 3000);
//}
}
现在我意识到我通过估计每个实例相距一定数量的像素来使用盗版方法,并且在实例数量中进行了硬编码,这并不理想。编写此函数的最佳方法是什么?代码将在http://cornellhub.com/board/上实现