并不十分复杂:
window.onload= function() {
if (!navigator.standalone) return;
for (var i= document.links.length; i-->0;) {
document.links[i].onclick= function() {
var req= new XMLHttpRequest();
req.onreadystatechange= function() {
if (this.readyState!==4) return;
document.body.innerHTML= this.responseText;
};
req.open('GET', this.href, true);
req.send();
return false;
};
}
};
如果要对IE6 XMLHttpRequest的工作,如果这是你所关心的一切,你需要先定义此:
if (!window.XMLHttpRequest && 'ActiveXObject' in window) {
window.XMLHttpRequest= function() {
return new ActiveXObject('MSXML2.XMLHttp');
};
}
这真的有就是这样。
但是,对于通用的网页,你不应该这样做;不在本地JavaScript中,也不在jQuery中。将内容添加到现有页面中会破坏浏览器的导航功能,并将其替换为空白。后退和前进按钮现在不再工作。用户不能为他们喜欢的页面添加书签,或将链接发送给其他人。这是对帧最糟糕的可用性问题的重新发明,不应该在开放的网络上完成,而不需要额外的工作来为搜索引擎实现HTML5历史导航和hashbang后备导航。
如果您发现jquery臃肿,请等待,看看您的“真实”javascript会是什么样,一旦适用于所有平台上运行:) – pixeline 2011-06-14 19:21:32