san*_*a B 20 javascript html5 google-chrome ios html5-history
出于测试目的,我想用大量条目填充历史记录.更确切地说,我想添加X项以禁用浏览器的后退按钮,因为即使用户点击X次,他也会保持在同一页面上.
我这样做的方式如下:
(function (){
for (var x = 0; x < 10; x++) {
history.pushState(null, document.title, location.pathname);
}
}());
Run Code Online (Sandbox Code Playgroud)
因此,当页面被加载时,当前页面的10个元素被注入到历史中.此方法适用于除iOS上的Chrome以外的所有支持历史API的浏览器!
使用上面的代码,iOS上的Chrome(7到10)做了一些非常奇怪的事情:
Safari和其他所有iOS浏览器都可以满足我的需求.我究竟做错了什么?
小智 2
对于iOS上的chrome,本机history.pushState被附加扩展覆盖,如果您alert(history.pushState)
可以看到它不是我们在其他浏览器上看到的本机代码
请参阅下面的 Polyfills 可能会对您有所帮助,