2013-05-22 139 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