2014-05-19 107 views
1

我正在設計一個簡單的網站,我是網絡編程新手。初始頁面是使用javascript動態生成的。當用戶點擊一個鏈接,然後使用瀏覽器返回按鈕返回時,頁面每次都會重新加載。我無法找到如何停止重新加載頁面並將其緩存在瀏覽器的歷史記錄中。我已經嘗試jQuery Mobile的pagecreate和pageinit事件,但沒有幫助。每次在後退按鈕上都會調用它們。請幫助我,歡迎任何建議。保存動態導航頁面

+0

這不是瀏覽器的工作方式。如果您導航到新頁面,頁面會重新加載,部分或全部數據可能在緩存中,但瀏覽器仍會執行重新加載。您可以使用ajax更改頁面的內容而無需重新加載。您還可以使用散列,以便後退/前進仍然有效。 –

+0

如何使用ajax更改內容而無需重新加載?這正是我想知道的。你能解釋一下嗎? – Aarkan

+0

這是一個簡單的例子。 http://css-tricks.com/ajax-load-container-contents/ –

回答

0

查看HTML 5 History API

link.addEventListener('click', function(event) { 
    // manually add a value to the history stack 
    // without making the browser load any new page 
    history.pushState('Contact Page Form', 'Contact Page', '/contact'); 
}); 

// capture navigation in case we want to change, 
// for instance, some content when it changes 
window.addEventListener('popstate', function(event) { 
    document.querySelector('h1').innerHTML = event.state; // 'Contact Page Form' 
});