前言:項目中的主頁面里有 iframe,切換 iframe 的 src 地址之后,再點瀏覽器的回退之后,會導致 iframe 里面回退,而不是主頁面回退。
問題
瀏覽器機制的原因,在 iframe 導航變化后手動點擊瀏覽器的后退按鈕也依然只是后退 iframe 中的導航。
但是我只想讓父頁面后退,並不想讓 iframe 后退,但在改變了 iframe 的 src 后就達不到這樣的效果。
解決
不要修改 iframe.src,而是刪除舊 iframe 元素,新建一個 iframe 元素並替換它,這樣不會產生 history。
直接 createElement,替換原來的 iframe。