我在javascript中使用鼠標滾輪使用事件偵聽器創建了自己的滾動函數,問題是,該函數允許用戶大致保持向下滾動而不是停止一旦它們到達底部滾動DIV ..JavaScript滾動功能
這是我有: http://jsfiddle.net/RjEr7/7/
有問題的功能:
function do_it(e){
var jump = 50;
var parentHeight = parseInt(this.parentNode.offsetHeight)-50;
var childHeight = parseInt(this.offsetHeight);
var i = parseInt(this.style.marginTop, 10) || 0;
var wheel = e.wheelDeltaY;
var childHeightNew = childHeight + i;
if(wheel == -120){
if(childHeightNew > parentHeight){
i -= jump;
}
}else if(wheel == 120){
if((childHeightNew < childHeight) && i < 0){
i += jump;
if(i>0){
i=0;
}
}
}
this.style.marginTop = i + 'px';
}
在的jsfiddle,你會看到紅色框滾動漲過頭。不知道如何解決它。
請幫忙。
看起來事件監聽程序沒有連接正確。添加警報('egewrweg');在功能的開始 - 對我來說,當我滾動時沒有任何提醒信息。 – frenchie
@frenchie http://jsfiddle.net/RjEr7/8/警報正常工作。 – Sir
http://jsfiddle.net/RjEr7/9/這個工程;不知道爲什麼,但即使剛更新的小提琴也不會觸發警報。使用jQuery滾動處理程序進行調試,以便至少我們確信處理程序能夠正常工作。 – frenchie