2013-04-25 77 views
0

我試圖用jquery mobile($('#testpage').page('destroy').page();)動態更新頁面內容,並重置滾動位置($.mobile.silentScroll(0);)。jquerymobile,動態更新頁面並重置滾動位置

它的工作原理,但幾毫秒,jquery顯示在舊位置滾動的新內容。我希望直接在頁面頂部顯示新內容。

jquery中必須有一個參數,當你調用$('#testpage').page('destroy').page();時會記住滾動位置,我希望重置這個參數。

也許我有錯誤的方法,我應該爲2頁使用2個分隔的div。

我這樣做的原因是因爲我希望url中的哈希值與2個頁面相同,並且我不希望用戶能夠使用瀏覽器後退操作回到上一頁。如果我可以用2個獨立的div來實現這一點,那也可以。

這裏是一個的jsfiddle來說明:http://jsfiddle.net/EKFSy/2/

+0

這會有幫助嗎? http://jsfiddle.net/Palestinian/zsNDV/ – Omar 2013-04-25 19:15:41

回答

0

我換成$.mobile.silentScroll(0);$.mobile.changePage($('#testpage') , {allowSamePageTransition:true});和它的工作。

請注意,我也試過玩$.mobile.urlHistory.getActive().lastScroll。在我的情況下沒有必要將它設置爲零(因爲看起來同一頁上的changePage已經重置了滾動位置),但如果要更改歷史記錄中的滾動位置,這可能是一個有用的值。

http://jsfiddle.net/EKFSy/3/