2013-04-24 56 views
0

我正在構建一個動態內容列,並將其添加到類似於TweetDeck樣式的列頂部。保留滾動部分的閱讀位置

現在,如果我要向下滾動div以查看內容,則添加到頂部的內容將導致div從滾動位置跳轉,如果大量內容是被添加到列中。

有誰知道一種方式是CSS或jQuery來保存用戶所在的位置,但仍允許內容仍然被添加在頂部?

抱歉,我不能提供一個JS小提琴,數據是在一個開發環境

更新 - 實施例HTML標記

<div class="results" id="results9016"> 
    <article> 
    <img alt="Dave" src="normal.jpg"> 
    <div class="data"> 
     <p class="user"><a target="_blank" href="#">dave</a></p> 
     <p class="message">Message</p><p class="datetime">24 Apr 17:16:23</p></div> 
    </article> 
    <article> 
    <img alt="Dave" src="normal.jpg"> 
    <div class="data"> 
     <p class="user"><a target="_blank" href="#">dave</a></p> 
     <p class="message">Message</p><p class="datetime">24 Apr 17:16:23</p></div> 
    </article> 
    <article> 
    <img alt="Dave" src="normal.jpg"> 
    <div class="data"> 
     <p class="user"><a target="_blank" href="#">dave</a></p> 
     <p class="message">Message</p><p class="datetime">24 Apr 17:16:23</p></div> 
    </article> 
</div> 

使用一個jQuery .prepend()被添加每個項目元素;

在此先感謝

+0

您是否嘗試過在添加容器時使用相同數量的新div的高度來滾動容器? – DigTheDoug 2013-04-24 16:01:29

+0

你用什麼jQuery方法追加內容? 。附加()?如果你能向我們展示一般的HTML結構,它會有幫助。 – chrx 2013-04-24 16:07:23

+0

不,我沒有嘗試過這種方法,頂部附加div /內容的高度可能會有所不同,這可能是一個問題。 – 2013-04-24 16:07:27

回答

1

嘗試緩存文件的滾動位置前插之前將其復位之後立即:

var addTweet = function() { 
    var scrollPosition = $(document).scrollTop(); 
    $('#results9016').prepend($newTweet); 
    $('html, body').scrollTop(scrollPosition); 
} 

Here's a fiddle of it in action.注:根據您的代碼,您可能要滾動的容器,而不是整個文件。