在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ JavaScript history.pushState/replaceStat

JavaScript history.pushState/replaceState 為什么在頻繁操作一段時(shí)間后就失效了呢?

線上demo如下所示:

https://codepen.io/weisiwu/pe...

圖片描述

我想實(shí)現(xiàn)的是,根據(jù)滾動(dòng)距離來修改頁面的URL,但是發(fā)現(xiàn)使用 history api 去實(shí)現(xiàn)時(shí),當(dāng)?shù)讲僮饕欢螘r(shí)間后就會(huì)出現(xiàn)

url不在變化的情況,請(qǐng)問有誰了解這個(gè)問題嗎?還請(qǐng)賜教。

---- 補(bǔ)充

  1. 瀏覽器是:

clipboard.png

  1. 當(dāng)我重新打開一個(gè)頁面后,再返回就又可以刷新了
回答
編輯回答
情未了

https://bugs.chromium.org/p/c... 國外有個(gè)帖子說這個(gè)事情,會(huì)出現(xiàn)這種狀況正是因?yàn)椤邦l繁操作”,pushState也好、replaceState也好是很耗資源的,所以頻繁操作一定次數(shù)后,瀏覽器處于安全考慮就不再響應(yīng),過一段時(shí)間后恢復(fù)正常。

2017年7月2日 07:16
編輯回答
奧特蛋

我在瀏覽器上做了個(gè)測試
循環(huán)修改url,間隔0.1秒
修改100次,也就是10秒,URL就會(huì)停止變化
停止5秒后,URL繼續(xù)變化
5秒內(nèi)對(duì)URL做的更改都會(huì)生效
你的demo上的間隔大概是10秒

2017年7月9日 07:55