[36] window.opener
は、window.open
で開いた閲覧文脈内のスクリプトから、元の閲覧文脈へとアクセスするための特性です。
window.opener
(DOM)[17] Window
インターフェイスの
opener
IDL属性の取得器は、
次のようにしなければなりません >>16。
[26] Window
インターフェイスの
opener
IDL属性の設定器は、
指定値について、次のようにしなければなりません >>16。
[15] 補助閲覧文脈は、 opener閲覧文脈と廃除済み (初期値は偽) を持ちます >>13。
[14] opener閲覧文脈は、 補助閲覧文脈が作成された元の閲覧文脈です >>13。
[31] opener閲覧文脈は、直接到達可能閲覧文脈かどうかや familiar with かどうかの決定に影響します。
[32] opener閲覧文脈は、作成子閲覧文脈ともなることがあります。
[33] ある閲覧文脈のopener閲覧文脈という関係は、
廃除 (disown its opener) >>16 されることがあります。
これは、スクリプトから window.opener
を通して opener閲覧文脈へのアクセスをできなくする(なる)ことをいいます。
[34] disown されるのは、次の場合です。
window.opener
に値を設定した場合 (window.opener = window.opener
も含みます)。rel=noreferrer
が適用される場合 (ハイパーリンクをたどる処理)。rel=noopener
が適用される場合 (ハイパーリンクをたどる処理)。window.open
の機能 noopener
が指定された場合。noopener
[9] リンク型 noopener
は、
新しい閲覧文脈を開いた時に window.opener
を null とするべきことを示します。
[10] noopener
は、 a
要素や
area
要素の rel
属性で使うことができます >>8。
[11] 本リンク型はハイパーリンクを作成するものではなく、注釈となるもの (hypertext annotation) です。 (他にリンク型を作成するハイパーリンクが無い時は、 暗示的に作成されるハイパーリンクを注釈付けするものです。) >>8
noreferrer
と似ています。window.open
の機能 noopener
[38] window.opener
の第3引数 features
の字句 noopener
>>37 は、新しい閲覧文脈を開いた時、
その関係を切ることを求めるものです。
[39] これが指定された場合、新しい閲覧文脈側の window.opener
は null となります。 window.open
は null
を返し、新しい閲覧文脈を返しません。
[1] Web Applications 1.0 r7941 Example window.opener cross-origin. ( ( 版)) http://html5.org/tools/web-apps-tracker?from=7940&to=7941
[2] Bug 21946 – Ignoring non-null values of opener does not seem to be web-compatible ( ( 版)) https://www.w3.org/Bugs/Public/show_bug.cgi?id=21946
[3] Web Applications 1.0 r8235 Try to make window.opener more compatible ( ( 版)) http://html5.org/tools/web-apps-tracker?from=8234&to=8235
[4] [whatwg] Effect on window.opener when navigating an existing window using window.open ( ( 版)) http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2014-April/126955.html
[5] Web Applications 1.0 r8652 Turns out window.opener is set to all kinds of crazy things and we shouldn't fire TypeError for them ( ( 版)) http://html5.org/r/8652
[6] IRC logs: freenode / #whatwg / 20151105 ( 版) http://krijnhoetmer.nl/irc-logs/whatwg/20151105#l-441
[7] Add a 'noopener' <link rel> keyword and window feature · whatwg/html@2992ea9 ( 版) https://github.com/whatwg/html/commit/2992ea921bc75e44157451a37a807a8ce0b9a884
[211] Add a 'noopener' link attribute by mikewest · Pull Request #290 · whatwg/html ( 版) https://github.com/whatwg/html/pull/290
[40] Popups from non-secure contexts now require `noopener` to be consider… · w3c/webappsec-secure-contexts@b062415 ( 版) https://github.com/w3c/webappsec-secure-contexts/commit/b062415fb3b1213b37ecce5c63e70f48888c6f8d
[41] 28821 – add rel=newcontext ( 版) https://www.w3.org/Bugs/Public/show_bug.cgi?id=28821
[42] About rel=noopener ( 版) https://mathiasbynens.github.io/rel-noopener/
[43] Fixing some links and cleaning up lists. (mikewest著, ) https://github.com/w3c/webappsec-secure-contexts/commit/5f36532e8909c8bf72daa431724b6372bc5366ab
[44] Improve navigate for service worker hooks (jungkees著, ) https://github.com/whatwg/html/commit/2b93f9ec35b152e58d3e181bea8c45d789bac949
Implemented rel=noopener (r207840)
[46] Clarify rel=noopener & "disown opener" effects (sideshowbarker著, ) https://github.com/whatwg/html/commit/b2762db3980154c016a07752fd0feebb0f6581d5
[47] About rel=noopener () https://mathiasbynens.github.io/rel-noopener/
[48] Stubbing out 'disown-opener'. (mikewest著, ) https://github.com/w3c/webappsec-csp/commit/68330f35ba42ffc426aee26715968d7a2ee203c6
[49] Breaking the `opener` relationship. (Mike West著, ) https://lists.w3.org/Archives/Public/public-webappsec/2017Apr/0071.html
[50] Mark a few things as WIP. (mikewest著, ) https://github.com/w3c/webappsec-csp/commit/eff9c9c3277e108d243d44fa21924f532b6b1a87
[51] Make noopener stop the copying of session storage (mystor著, ) https://github.com/whatwg/html/commit/a68a1f712b641981d7367d78758596b21a04521c
[52] 1372662 - Don't copy SessionStore when creating a window with noopener () https://bugzilla.mozilla.org/show_bug.cgi?id=1372662
[53] Mention `sessionStorage` copying in logic for creating auxiliary browsing contexts · Issue #2681 · whatwg/html () https://github.com/whatwg/html/issues/2681
[54] Mention sessionStorage copying in logic for creating a new browsing context by mystor · Pull Request #2832 · whatwg/html () https://github.com/whatwg/html/pull/2832
[55] Should opener be taken into consideration when determining if a context is secure? · Issue #42 · w3c/webappsec-secure-contexts () https://github.com/w3c/webappsec-secure-contexts/issues/42
[56] "On setting, if the new value is null then the c..." · Issue #3351 · whatwg/html () https://github.com/whatwg/html/issues/3351
[57] Editorial: cleanup window.opener (annevk著, ) https://github.com/whatwg/html/commit/15317c7a58040af294510e7511c0512a19083ffb
[21] Editorial: cleanup window.opener by annevk · Pull Request #3448 · whatwg/html () https://github.com/whatwg/html/pull/3448
[22] Editorial: cleanup window.opener by annevk · Pull Request #3448 · whatwg/html () https://github.com/whatwg/html/pull/3448
[23] Fix #313: make disowning disown the opener browsing context too by annevk · Pull Request #323 · whatwg/html () https://github.com/whatwg/html/pull/323
[24] Meltdown/Spectre | Web | Google Developers () https://developers.google.com/web/updates/2018/02/meltdown-spectre
[25] Editorial: fix confusing phrasing for opener setter (domenic著, ) https://github.com/whatwg/html/commit/fefb8792a278bc2568a038bb1135862921ea365e
[27] "opener" setter says to return things, but setters can't return stuff · Issue #3904 · whatwg/html () https://github.com/whatwg/html/issues/3904
[28] Editorial: fix confusing phrasing for opener setter by domenic · Pull Request #3916 · whatwg/html () https://github.com/whatwg/html/pull/3916
[63] Removed disown-opener (#327) (andypaicu著, ) https://github.com/w3c/webappsec-csp/commit/52b71625bd6ed7123615e9d7c159f9ad805a5ba7
[64] Removed disown-opener as it will not make it into CSP3 by andypaicu · Pull Request #327 · w3c/webappsec-csp () https://github.com/w3c/webappsec-csp/pull/327
[65] CSP3: Add something along the lines of `disown-window-owner`. · Issue #139 · w3c/webappsec () https://github.com/w3c/webappsec/issues/139
Updated the link behavior for "target=_blank" to include rel="noopener" implicitly.
[67] Consider not setting browsing context name when noopener/noreferrer are used · Issue #4314 · whatwg/html () https://github.com/whatwg/html/issues/4314
[68] Define Window's opener when there's no browsing context (annevk著, ) https://github.com/whatwg/html/commit/7c9a8c0a382cfc2a0d193daff2f2fb95beef5a0b
[61] Define Window's opener when there's no browsing context by annevk · Pull Request #4379 · whatwg/html () https://github.com/whatwg/html/pull/4379
[70] Support noreferrer for window.open() (annevk著, ) https://github.com/whatwg/html/commit/a9a7944f20ec9223c252578db3e8bf870bca5718
[71] Editorial: inline noreferrer processing model (annevk著, ) https://github.com/whatwg/html/commit/f47773d25a7b1a3a03c1047bbc4037d08639cf9b
[72] noopener window.open feature seems pretty broken as implemented in browsers · Issue #1902 · whatwg/html () https://github.com/whatwg/html/issues/1902
[73] CSP3: Add something along the lines of `disown-window-owner`. · Issue #139 · w3c/webappsec () https://github.com/w3c/webappsec/issues/139
[74] Links to Unrelated Browsing Contexts - WHATWG Wiki (, ) https://wiki.whatwg.org/wiki/Links_to_Unrelated_Browsing_Contexts
[75] 69267 - Provide an explicit way to suggest opening a link in a new process () https://bugs.chromium.org/p/chromium/issues/detail?id=69267
[76] Deprecate rel="noopener" · Issue #2119 · whatwg/html () https://github.com/whatwg/html/issues/2119
[77] Remove noopener from tokenizedFeatures by annevk · Pull Request #3297 · whatwg/html () https://github.com/whatwg/html/pull/3297
opener
という名前の通常の JavaScript の変数が使われることがあるため、値を一度設定したら IDL属性ではなくなる、 というかなり特殊な設定器となっています。