我正在尝试使用 html5window.history.pushState()函数在不刷新页面的情况下加载新链接。一切正常,但是当我在 Chrome 或 Firefox 中打开我的检查元素时,head标签和body标签丢失了。我不知道为什么。这是我的代码:function goto(event,el){ url=el.href; event.preventDefault(); window.history.pushState('','',url); $('html').load(url);}新的加载页面是这样的:-<html><head><script type="text/javascript" src="http://localhost/js/jquery.js"></script></head><body><div id="menu"><a href="menu1.php">Menu1</a><a href="menu2.php">Menu2</a></div></body></html>我真的很想在没有正确刷新页面的情况下浏览页面。如何使用history.pushstate()函数解决这个问题,或者有没有其他方法。我的主要动机是达到像 Facebook 或 Twitter 那样的速度。
2 回答
白衣染霜花
TA贡献1796条经验 获得超10个赞
我尝试了很多选择,但我在这段代码中找到了我的解决方案
function goto(event,el)
{
url=el.href;
event.preventDefault();
window.history.pushState('','',url);
$.get(url, function(data) {
var head=data.match(/<head[^>]*>[\s\S]*<\/head>/gi);
$('head').html(head[0]);
$('#content').html($(data).find('#content').html());
});
}
你有比这更好的解决方案吗,这个解决方案在所有浏览器中的工作原理是否相同,以及速度/加载时间/性能问题是否存在。
我的主要目的是加载新页面内容而无需像 twitter 或 facebook 那样立即刷新页面
任何建议或帮助将不胜感激
添加回答
举报
0/150
提交
取消