2013-05-22 73 views
0

我正在做一個網站,我使用jQuery來加載我的HTML網頁內divs,所以主索引html保持完整的方式。問題是,如果用戶正在瀏覽加載到div中的html並嘗試刷新其瀏覽器(F5),則內容會「丟失」,因爲它只有一個頁面(index.html)。使用jQuery刷新div加載的div?

有沒有辦法解決這個問題?

<a onclick='$("#content").load("page1.html");'>Page1</a> 
<div id="content"></div> 
+1

你的意思是你想保持顯示內容,如果用戶刷新? – Alex

+0

是的,亞歷克斯,確切地說。 – lonewulf

+0

在頁面加載時執行'$(「#content」).load(「page1.html」);'。 –

回答

3

有兩種解決方案。如果用戶點擊鏈接,則會向網址添加哈希標籤。例如:

<a onclick='$("#content").load("page1.html"); window.location.hash = "page1.html";'>Page1</a> 

然後,在你的jQuery,你檢查一個主題標籤當用戶訪問該網站:

$(function() { 
    if (window.location.hash.length) { 
     var hash = window.location.hash.replace('#', ''); 

     $("#content").load(hash); 
    } 
}); 

其次,你可以使用Cookie,但我認爲,哈希的方式工作得很好,太:) :)

+0

看起來不錯,但仍然不適合我。 'window.location.hash =「page1.html」;'page1.html必須與html文件的路徑相同嗎?雖然我也嘗試過。 – lonewulf

+0

什麼不特別工作? – Alex

+0

當您點擊鏈接但點擊F5時,hastag會添加到網址中,但內容不會保留在那裏。 – lonewulf