javascript - 重新加载 IFRAME 而不添加到历史记录

标签 javascript html iframe

我正在更改 IFRAME 的 src 以重新加载它,它工作正常并在其 HTML 加载时触发 onload 事件。

但它会在历史记录中添加一个条目,这是我不想要的。有什么方法可以重新加载 IFRAME 而不影响历史记录吗?

最佳答案

使用 replace() 只是您自己的域 iframe 的一个选项。它无法在远程站点(例如:Twitter 按钮)上运行,并且需要一些特定于浏览器的知识才能可靠地访问子窗口。

相反,只需删除 iframe 元素并在同一位置构建一个新元素。仅当您在 DOM 中修改 src 属性时才会创建历史项,因此请务必在追加之前设置它。

编辑:JDandChips 正确地提到您可以从 DOM 中删除、修改和重新附加。不需要构建 fresh。

关于javascript - 重新加载 IFRAME 而不添加到历史记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/821359/

相关文章:

javascript - 二郎题

javascript - Angular 2 : Ts: Nested functions

javascript - Firefox 不会验证表单数据

html - Youtube嵌入代码自定义宽高

javascript - 检查对象、函数或元素何时准备就绪

html - 在移动浏览器中嵌入 PDF

javascript - 在 AngularJS 中插入来自可信源的 iframe

javascript - 将 componentDidUpdate(prevProps) 重写为钩子(Hook)

javascript - 检索对象集合中的元素

javascript - iframe动态高宽根据内部内容变化