我尝试了这段代码(它可以工作,但是当我们点击 3-4 次时,我的浏览器会卡住,可能是由于巨大的变量):
var elements = [ "content", "menu" ];
$.get(
url,
function(data)
{
// Elements
var resp = $("<div></div>").html(data);
$.each(
elements,
function(i, v)
{
var content = resp.find("#"+v);
$("#"+v).html(content);
}
);
// Title
var regexp = /<title>(.*)<\/title>/i;
document.title = data.match(regexp)[1];
// Change URL
history.pushState({ page: url }, url, url);
// Hiding loading div
}
);
在 Firefox 6.0、Chrome 和 Safari 5 上测试...
我想我可以使用 .load() 函数,但我不能只加载一个加载多个 div ......
以下代码不起作用:
var resp = $("<div></div>").load(url+" #content, #menu");
var content = resp.find("#content");
$("#content").html(content);
var menu = resp.find("#menu");
$("#menu").html(menu);
谢谢您的帮助!