Open haizhilin2013 opened 4 years ago
楼主啊,为什么你的面试题没答案啊。。。。
在更改 iframe 的 src 属性之后,浏览器会将新的页面作为一个新的浏览历史记录加入到浏览器中,并生成一个新的历史记录项。因此,在使用 iframe 加载新的页面时,浏览器会自动添加一个新的历史记录,并且不会出现后退或者前进按钮。
为了解决这个问题,可以使用 HTML5 中的 History API。具体来说,可以使用 history.pushState() 或者 history.replaceState() 方法将新的 URL 添加到历史记录中,从而使浏览器认为加载新页面时没有添加新的历史记录。这样,即使在更改 iframe 的 src 属性之后,也可以通过浏览器的后退和前进按钮来导航到之前访问的页面。
示例代码如下:
// 使用 history.pushState() 方法
history.pushState(null, null, newUrl);
// 使用 history.replaceState() 方法
history.replaceState(null, null, newUrl);
其中,第一个参数为状态数据对象,第二个参数为页面标题,第三个参数为新的 URL。请注意,这些方法只会更改浏览器的地址栏显示的 URL,而不会实际加载新的页面。
第319天 iframe在更改了src之后,不出现后退或者前进按钮怎么解决?
我也要出题