2015-08-24 30 views
0

我有一個嘗試在divs同步滾動的問題,我有兩個div,第一個div有溢出樣式:隱藏,第二個div有溢出樣式:滾動,然後我找到了同步滾動一個幾個答案中的div使用jQuery例如:如何爲不同樣式溢出的div同步兩個滾動條

$("#div2").scroll(function() { 
    $("#div1").scrollTop($(this).scrollTop()); 
}); 

http://jsfiddle.net/gqHyW/43/

,但我因爲在div的是不同步滾動的底部有與解決的問題,請參見圖片 。

enter image description here

有人有一個想法如何解決這個錯誤。

謝謝你提前

回答

1

儘管不需要在那裏你的水平滾動顯示。您可以定位橫向滾動並隱藏它,同時保持垂直滾動:

.bottom { 
    left  : 50%; 
    overflow-y : scroll; 
    overflow-x : hidden; 
} 
+0

嗨。無線電感謝您的回答,抱歉在圖像中的不良信息,事實是,我需要水平滾動,我更新了圖像和jsfiddle以顯示您的問題:http://jsfiddle.net/gqHyW/43/ – systems

+0

最快的方法可能是向左邊的div添加一個水平滾動條。或者是滾動條高度的邊距。但是,如果我在Mac上查看它,滾動條會有不同的高度。否則,左側div滾動的JavaScript處理程序將與右側div同步,並且如果您的搜索範圍太遠,則需要稍微回退一點。 –

0

對我以前的答案我不好。

我明白你現在的樣子。

你需要穿過你的P標籤並同步高度,這取決於每個標籤的內容高度。

下面是應該在兩個方向上工作的功能:

var topPs = $(".top p"); 
var bottomPs = $(".bottom p"); 
for(var i=0; i< topPs.length;i++){ 
    var topPHeight = $(topPs[i]).height(); 
    var bottomPHeight = $(bottomPs[i]).height(); 
    console.log(bottomPHeight); 
    if(bottomPHeight>topPHeight){ 
     $(topPs[i]).height(bottomPHeight); 
    }else{ 
     $(bottomPs[i]).height(topPHeight); 
    } 
} 

你仍然需要水平滾動修復我在其他的答案中提到。

我滾成一個單一的小提琴:http://jsfiddle.net/op9nddoq/1/

編輯:因爲這不是一個佈局黑客,這是完全可以接受的在這裏使用一個表,因爲它是一個表,單元格高度將被所有調整他們自己。