rel="noopener"

noopener 關鍵字用於 rel 屬性,適用於 <a><area><form> 元素。它指示瀏覽器在導航到目標資源時,不授予新的瀏覽上下文訪問開啟它的文件的許可權 — 透過不設定新視窗的 Window.opener 屬性(它返回 null)。

這在開啟不受信任的連結時尤其有用,以確保它們無法透過 Window.opener 屬性篡改原始文件(更多詳情請參閱 About rel=noopener),同時仍然提供 Referer HTTP 頭(除非也使用了 noreferrer)。

請注意,當使用 noopener 時,除了 _top_self_parent 之外的所有非空 target 名稱,在決定是否開啟新視窗/標籤頁方面,都將被視為 _blank

注意:<a><area><form> 元素上設定 target="_blank" 會隱式提供與設定 rel="noopener" 相同的 rel 行為,即不設定 window.opener