2013-02-25 43 views
5

我有具有固定的位置,但具有滾動能力的元素左和使用一個jQuery計算這是我從this example on JsFiddle.與scrollLeft元件滾動比文檔的其餘部分更快的

$(window).scroll(function(event) { 
var x = 0 - $(this).scrollLeft(); 
var y = $(this).scrollTop(); 

// whether that's below the form 
if (y >= top) { 
    // if so, ad the fixed class 
    $('.scroll_fixed').addClass('fixed'); 
} else { 
    // otherwise remove it 
    $('.scroll_fixed').removeClass('fixed'); 
} 

$(".scroll_fixed").offset({ 
    left: x + leftInit 
}); 

}); 

使用權解決方案的工作順利,直到我必須滾動到左側,那裏的元素被滾動「視差」對文檔的其餘部分 - 即它滾動兩次快速的文檔的其餘部分。

我知道這是jQuery的計算問題,但想知道是否有人已經遇到過嗎?如果是這樣,你是怎麼解決的呢?我是一個有點損失....

編輯

問題就迎刃而解了 - 這是因爲該代碼使用$(窗口).scrollLeft();代替我是希望操縱元件的範圍內的父元素。

包裝DIV是)列爲 「wrapperDiv」,所以我用$( 「wrapperDiv。」)scrollLeft(。

如問我將標誌着這個問題,但我是新來的堆棧溢出,我不能回答了7小時....

回答

0

只是爲了將此問題作爲回答:

「這是因爲代碼是使用$(window).scrollLeft();而不是我希望操作的元素範圍內的父元素。包裝div被歸類爲「wrapperDiv」,所以我用$(".wrapperDiv").scrollLeft();

相關問題