虽然没有一个真正有帮助,但是有很多问题。What other options for replacing entire HTML document via W3C DOM?更接近我的想法,但没有回答我的问题。
我有一个页面。当一个人点击从该页面到另一个页面的链接时,将使用AJAX获取新页面的内容。 responseText
包含一个完整的新页面。如何用新的内容替换旧内容?
Facebook完美无瑕,Gmail也是如此。页面已更新,包括其头部(当页面标题根据新内容更改时我注意到了这一点。)
到目前为止,我已尝试替换innerHTML
<html>
标记,但变量从一个页面传送到另一个页面,这会导致错误。我也试过了document.write(xhr.responseText)
,但是在调用history.onpopstate
时会引起冲突,但大多数情况下,它很慢。
我还没有尝试过document.replaceChild(newDom, document.documentElement)
,因为我无法找到适当的跨浏览器方式来创建新的文档对象实例。
那么,是否有一种干净的方式来欺骗浏览器&#34;这是一个新的页面。您不应该将上一页中的变量带到此页面。将它渲染为与此处的HTML文本完全不同的页面。&#34;?
答案 0 :(得分:1)
你可以用角度js完美地完成它。即使它非常容易使用角度js
答案 1 :(得分:0)
您是否尝试添加类似...
document.getElementById(elementID).innerHTML = "";
..到您的事件处理程序,然后附加新信息?