2011-11-29 28 views
3

假設我已經有很少的長頁面,並且我想使用pjax。當我滾動一頁到最後,然後點擊一個調用pjax reload的鏈接,然後第二頁的視口從頁面的末尾開始(而沒有pjax,瀏覽器將從頁面的頂部開始)。pjax(基於ajax的頁面加載)和用戶滾動

其他缺點我看到的是,當單擊返回按鈕時,上一頁的視口再次保留,並且不會返回到上一頁的內容。

這種行爲很煩人,不可用。是否有可能用pjax來模擬標準瀏覽器的行爲?

回答

5

我對此的解決方案是綁定到pjax:end事件,並將頁面滾動到頂部;唯一的缺點是後退按鈕仍然不記得滾動位置,並始終從頂部開始。

$('#your-container').bind('pjax:end', function() { 
    $(window).scrollTop(0); 
}); 
+0

我通過添加pjax點擊功能裏面以下做同樣的事情:$( '身體,HTML')動畫({ \t \t \t \t \t \t \t \t \t scrollTop的:0 \t \t \t 800);以及其中, –