簡體   English   中英

滾動時的margin-left更改

[英]margin-left changes on scroll

要從左向右滾動,我有這個小javascript,這非常有效。

window.onscroll=function() {
var scroll = window.scrollY;
$('#page').css('left', '-' + scroll + 'px');
}

但每次我向右滾動一次,然后向左滾動,內容的邊距就會改變。 圖片

您可以看到兩個圖片的滾動條位於頂部。 第一個是滾動之前,第二個是滾動之后。

沒有圖片的演示

添加position:fixed不會自動將元素定位到最左側。 您應該為#page添加初始left值以獲得一致的結果,f.ex:

#page{ left:0 }

雖然看起來你想要在左邊有更多的空間,所以嘗試類似的東西:

var init = 200, // the initial left margin
    $page = $('#page').css('left', init);
window.onscroll = function() {
    $page.css('left', init-window.scrollY);
};

當css樣式left = 0px時會發生這種情況。 如果scroll = 0,只需刪除樣式
請參見示例http://jsbin.com/umAdeGI/2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM