項目中發現,多系統通過iframe嵌套時,如果iframe的請求是重定向會導致父級頁面重定向,怎么破?
查找MDN(https://developer.mozilla.org/zh-CN/docs),找到sandbox 屬性是用來限制安全沙箱的.
最終的設置
(不包含allow-top-navigation即可)
1、在 PC 端你可以這樣設置 iframe, 來防止父級頁面被重定向, 產生重定向結果的鏈接會以 _blank 的形式打開
<iframe src="page-b.html" sandbox="allow-forms allow-scripts allow-same-origin allow-popups"></iframe>
2、在移動端你需要這樣設置 iframe, 讓產生重定向結果的鏈接失效, 來達到防止父級頁面被重定向的目的
<iframe src="page-b.html" sandbox="allow-forms allow-scripts allow-same-origin"></iframe>