2012-01-28 39 views
1

我有顯示幾個項目我的網頁上一個側邊欄(下面一個其他)。我的側邊欄固定在我的頁面右側,因此當用戶滾動頁面時,側欄不會移動。我側邊欄上的一些項目可能會部分顯示,這取決於頁面的高度。全部項目

我的問題:是否有可能完全隱藏被切斷的項目?

enter image description here

我不知道我是不是清楚了嗎?

還是要謝謝你。

回答

0
var y = window.height; 
var items = $('items selector'); 


items.each(function(i){ 
    var that = $(this); 
    var height = that.height(); 
    var coord = that.offset(); 
    var itemBottom = coord.top+height; 
    if(y < itemBottom){ 
     that.hide(); 
    } 
}); 

這應該工作我想,我還沒有;噸雖然測試,但如果你有線索,你就可以做,如果你不要讓我知道它的工作。 另外,如果您需要解釋什麼代碼,我會解釋它。 它會更好,如果你用CSS或雙重修復它認爲你的佈局方法。

+0

我嘗試了一些...最後一個元素閃爍但沒有正確隱藏,我不知道爲什麼。這裏是一個jsFiddle:http://jsfiddle.net/MJ9VC/有人可以看一看嗎?爲了測試,調整瀏覽器的大小,使其更小(高度),您將看到最後一個元素閃爍(隱藏/顯示)。謝謝。 – Bronzato 2012-01-28 13:36:23

+0

那麼如果你使用css:visibility屬性會更好。該錯誤來自於顯示:無;元素沒有高度和位置,所以一種方法是在開始時檢測它們的位置,並且只是動態地隱藏它們。到目前爲止,我們都在動態地做!或CSS:我一開始在這裏visibility屬性是:http://jsfiddle.net/MJ9VC/22/ – kidwon 2012-01-28 15:28:46

+0

非常感謝您!感謝你,我取得了進展。 – Bronzato 2012-01-28 15:43:17

0

,如果你想不顯示多餘的物品,你可以用$(window).hight()然後加上你的其他的目的和減少由此找到你的網頁的高度。如果您在側欄中的物品有課程,您可以從這些高度計算出您的物品的最終數量,並隱藏額外的物品。

+0

感謝阿里。這可能是我嘗試的一個很好的解決方案。 – Bronzato 2012-01-28 11:08:28

0

計算$(窗口).height)()和一個項目的高度說

說窗口的高度是WH和項目的高度IH,然後做

變種N = Math.floor(WH/IH)。

n是您無需任何裁剪即可適合的項目。