我正在拼凑一个jQuery插件。该插件需要面板,并自动调整其高度。于是,我开始了与这样的:跟踪滚动位置超出元素
<div class="panel">Test 1</div>
<div class="panel">Test 2</div>
<div class="panel">Test 3</div>
该代码看起来是这样的:
sizePanels: function(){
panels.each(function(){
$(this).height(docHeight);
});
},
有一个向下按钮,该按钮时,将用户带到下一个$( ” .panel):
nextPanel: function(){
$.scrollTo($(".panel:eq(" + panelIndex + ")"), 250, { easing: "swing" });
}
就这样,我在跟踪面板指标,他们对:
if (panelIndex < (panelCount - 1)) {
panelIndex += 1;
}
我试图找出一种方法来跟踪他们是否碰巧手动滚动,并传递其中一个元素,然后增加“panelIndex”,以便按钮不会将它们向上移动而不是向下移动因为用户使用滚动条而不是按钮,因此它从不增加。这是我到目前为止:
$(window).scroll(function(){
panels.each(function(index){
if ($(window).scrollTop() > $(this).scrollTop()) {
panelIndex = index;
// console.log(index);
}
});
if (panelIndex < panelCount - 1){
s.showDownButton();
}
});
该代码过度检查和感觉有点过度。有没有更好的方法来做到这一点?
在'$(窗口).scroll(函数()',而不是** **窗口尝试给面板父DIV – Imdad