<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><section><h1>仕様書</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> <cite xml:lang="en-GB-x-hixie">HTML Standard</cite> (<time>2015-04-25 04:40:19 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://html.spec.whatwg.org/#state-object">https://html.spec.whatwg.org/#state-object</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[21]</anchor-end> <cite xml:lang="en-GB-x-hixie">HTML Standard</cite> (<time>2015-04-25 04:40:19 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://html.spec.whatwg.org/#dom-history-state">https://html.spec.whatwg.org/#dom-history-state</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="28" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[28]</anchor-end> <cite xml:lang="en-GB-x-hixie">HTML Standard</cite> (<time>2015-04-25 04:40:19 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://html.spec.whatwg.org/#dom-history-pushstate">https://html.spec.whatwg.org/#dom-history-pushstate</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="34" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[34]</anchor-end> <cite xml:lang="en-GB-x-hixie">HTML Standard</cite> (<time>2015-04-25 04:40:19 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://html.spec.whatwg.org/#history-notes">https://html.spec.whatwg.org/#history-notes</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="41" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[41]</anchor-end> <cite xml:lang="en-GB-x-hixie">HTML Standard</cite> (<time>2015-04-25 04:40:19 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://html.spec.whatwg.org/#popstateevent">https://html.spec.whatwg.org/#popstateevent</anchor-external></li></ul></refs></section><section><h1>直列化済み状態</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> <dfn><rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">直列化済み状態<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">serialized state</rt></rubyb></dfn>
(旧<dfn><rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">状態オブジェクト<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">state object</rt></rubyb></dfn>)
は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">利用者インターフェイス</anchor>の状態を表す<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">オブジェクト</anchor>です <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;15</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">状態オブジェクト</anchor>は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">セッション履歴エントリー</anchor>中に設定されることがあります。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="18" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[18]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">著者</anchor>は <code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">pushState</anchor></code> や <code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">replaceState</anchor></code>
により<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">状態オブジェクト</anchor>を指定できます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[19]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">著者</anchor>は <code class="DOMe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">popstate</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">イベント</anchor>により<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">状態オブジェクト</anchor>を受け取ることができます。</p></section><section><h1><code class="JS" xml:lang="en">history.state</code> 属性 (DOM)</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="22" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[22]</anchor-end> <code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">History</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インターフェイス</anchor>の
<dfn><code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">state</anchor></code></dfn> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IDL属性</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">取得器</anchor>は、
次のようにしなければ<MUST xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">なりません</MUST> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;21</anchor-internal></src>。</p><figure class="steps"><ol><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="25" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[25]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文脈オブジェクト</anchor>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</f>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">完全に活性</f>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">偽</anchor>なら、<ol><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="23" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[23]</anchor-end> <code class="DOMe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SecurityError</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">例外</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">投げ</anchor>、ここで停止します。</li></ol></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="26" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[26]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文脈オブジェクト</anchor>の <f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><code xmlns="http://www.w3.org/1999/xhtml" class="DOMa" xml:lang="en">state<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">history.state</title></code></f>
を返します。</li></ol></figure><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="24" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[24]</anchor-end> <code class="DOMi" xml:lang="en">History</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">オブジェクト</anchor>は、
<dfn><f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><code xmlns="http://www.w3.org/1999/xhtml" class="DOMa" xml:lang="en">state<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">history.state</title></code></f></dfn> を持ちます。
初期値は <code>null</code> です <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;21</anchor-internal></src>。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[27]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">履歴の探索</anchor>と <code xmlns="http://www.w3.org/1999/xhtml" class="DOMm" xml:lang="en">pushState</code>/<code xmlns="http://www.w3.org/1999/xhtml" class="DOMm" xml:lang="en">replaceState</code>
で値が設定されます。</comment-p></section><section><h1><code class="DOMm" xml:lang="en">pushState</code> メソッド、<code class="DOMm" xml:lang="en">replaceState</code> メソッド</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="29" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[29]</anchor-end> <code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">History</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インターフェイス</anchor>の
<dfn><code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">pushState</anchor></code></dfn> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メソッド</anchor>と
<dfn><code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">replaceState</anchor></code></dfn> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メソッド</anchor>は、
次のようにしなければ<MUST xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">なりません</MUST> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="28" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;28</anchor-internal></src>。</p><figure class="steps"><ol><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="57" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[57]</anchor-end> <var>データ</var>を、第1引数を必須の <code class="IDL" xml:lang="en">any</code> として解釈した結果に設定します。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="58" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[58]</anchor-end> <var>題名</var>を、第2引数を必須の <code class="IDL" xml:lang="en">USVString</code> として解釈した結果に設定します。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="59" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[59]</anchor-end> <var>URL</var> を、第3引数を省略可能な <code class="IDL" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOMString</anchor><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">?</anchor></code>
として解釈した結果に設定します。省略時の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">既定値</anchor>は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">null</anchor> とします。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="60" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[60]</anchor-end> <var>文書</var>を、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文脈オブジェクト</anchor>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</f>に設定します。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="83" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[83]</anchor-end> <var>文書</var>が<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">完全に活性</f>でなければ、<ol><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="61" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[61]</anchor-end> <code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SecurityError</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">例外</anchor>を投げ、ここで停止します。</li></ol></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="62" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[62]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">利用者エージェント</anchor>の判断で、ここで停止して構いません。<example xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><p xmlns="http://www.w3.org/1999/xhtml"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="63" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[63]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">利用者動作</anchor>によって起動された場合以外の時や、
短時間で連続して実行された時、
<var>データ</var>が巨大すぎる場合などに、
本<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メソッド</anchor>呼び出しを無視できます。</p></example></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="64" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[64]</anchor-end> <var>直列化済みデータ</var>を、
<code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">StructuredSerializeForStorage</anchor> (<var>データ</var>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文脈オブジェクト</anchor>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Realm</f>)</code>
の結果に設定します。<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">例外</anchor>が投げられたら、それを<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">再度投げ</anchor>、ここで停止します。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="70" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[70]</anchor-end> <var>現在のURL</var>を、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文脈オブジェクト</anchor>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</f>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">文書の番地</title></f>に設定します。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="65" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[65]</anchor-end> <var>URL</var> が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">null</anchor> 以外なら、<ol><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="67" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[67]</anchor-end> <var>新URL</var> を、<var>URL</var>を<var>文書</var>に対して<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">構文解析<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">URLの構文解析</title></anchor>した結果に設定します。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="66" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[66]</anchor-end> <figure class="list"><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="68" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[68]</anchor-end> <var>新URL</var>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">失敗</anchor></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="50" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[50]</anchor-end> <var>新URL</var>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL記録</anchor>と<var>現在のURL</var>を比較した時、
<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">path</f>、<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">query</f>、<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">素片</f>を除く部品が異なる</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="69" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[69]</anchor-end> <var>新URL</var>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">起源<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">URLの起源</title></f>と<var>文書</var>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">起源<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">文書の起源</title></f>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">同じ起源</anchor>では<em>ない</em>場合で、
<var>新URL</var>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL記録</anchor>と<var>現在のURL</var>を比較した時、
<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">path</f>と<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">query</f>の一方または両方が異なる</li></ul></figure>... のいずれかの場合、<ol><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="71" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[71]</anchor-end> <code class="DOMe" xml:lang="en">SecurityError</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">例外</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">投げ</anchor>、ここで停止します。</li></ol></li></ol></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="51" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[51]</anchor-end> それ以外の場合、<ol><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="52" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[52]</anchor-end> <var>新URL</var>を、<var>文書</var>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">閲覧文脈</f>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">セッション履歴</f>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">現在エントリー</f>の <f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</f> に設定します。</li></ol></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="37" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[37]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URLおよび履歴更新手順群</anchor>を実行します。<figure class="list members"><dl><dt><var>文書</var></dt><dd><var>文書</var></dd><dt><var>新URL</var></dt><dd><var>新URL</var></dd><dt><var>直列化済みデータ</var></dt><dd><var>直列化済みデータ</var></dd><dt><var>題名</var></dt><dd><var>題名</var></dd><dt><var>状態pushフラグ</var></dt><dd>本メソッドは <code>pushState</code> であるか否か</dd></dl></figure></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="78" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[78]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文脈オブジェクト</anchor>の <f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><code xmlns="http://www.w3.org/1999/xhtml" class="DOMa" xml:lang="en">state<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">history.state</title></code></f> を、
<code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">StructuredDeserialize</anchor> (<var>直列化済みデータ</var>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文脈オブジェクト</anchor>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Realm</f>)</code>
の結果に設定します。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">例外</anchor>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">投げ</anchor>られたら、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文脈オブジェクト</anchor>の <f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><code xmlns="http://www.w3.org/1999/xhtml" class="DOMa" xml:lang="en">state<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">history.state</title></code></f> を、
<code>null</code> に設定します。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="79" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[79]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">現在エントリー</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">最新エントリー</anchor>は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">現在エントリー</anchor>とします。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="80" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[80]</anchor-end> <var>現在のURL</var>と<var>新しいURL</var>が異なるなら、<ol><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="81" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[81]</anchor-end> <code>webNavigation</code> API の <code>onHistoryStateUpdated</code> を呼び出します。
<var><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">遷移型</anchor></var>と<var><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">遷移修飾子</anchor>群</var>は適宜設定します。現在時刻も引き渡します。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">仕様書なし</src></li></ol></li></ol></figure><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="53" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[53]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="50" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;50</anchor-internal> が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">同じ起源</anchor>かどうかの判断ではないので、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">userinfo</anchor> の有無や値も (あれば) 判定基準となります。</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="30" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[30]</anchor-end> 両<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メソッド</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書の番地</anchor>を変更することができるものですが、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書の起源</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実効スクリプト起源</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書のドメイン</anchor>を変更することはできません。
この意味で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">同一起源ポリシー</anchor>を緩和するものではありません。更に、
<code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document.domain</anchor></code> を使っても変更可能な範囲を拡大することはできません。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[31]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書の起源</anchor>ではなく<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書の番地</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">起源</anchor>が問題となりますから、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書の起源</anchor>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">同じ起源</anchor>であっても <code xmlns="http://www.w3.org/1999/xhtml" class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">about:blank</anchor></code> や <code xmlns="http://www.w3.org/1999/xhtml" class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">data:</anchor></code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書の番地</anchor>となっている時、 <code xmlns="http://www.w3.org/1999/xhtml" class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">http:</anchor></code> や
<code xmlns="http://www.w3.org/1999/xhtml" class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">https:</anchor></code> の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> に変更することはできません。
この意味で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">同一起源ポリシー</anchor>より制限が厳しいと言うこともできますが、
両メソッドの趣旨が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書の番地</anchor>を変更するものですから、当然の制約でもあります。</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="32" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[32]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">砂箱</anchor>によって異なる<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">起源</anchor>で動作する<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スクリプト</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">素片識別子</anchor>以外を変更することもできません。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="33" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[33]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;31</anchor-internal> と <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="32" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;32</anchor-internal> は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書の起源</anchor>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書の番地</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">起源</anchor>の両方と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">同じ起源</anchor>の
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> には変更できる、と言い換えられます。</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="35" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[35]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">利用者エージェント</anchor>は、 <code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">pushState</anchor></code> の濫用を防ぐため、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">タイマー</anchor>からの呼び出しや<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">利用者</anchor>の明確な操作によらない<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">イベントリスナー</anchor>からの呼び出し、短時間での連続呼び出しを無視したほうが良いかもしれません
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="34" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;34</anchor-internal></src>。</p></section><section><h1><code class="DOMe" xml:lang="en">popstate</code> イベント</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="40" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[40]</anchor-end> <dfn><code class="DOMe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">popstate</anchor></code></dfn> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">イベント</anchor>は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">履歴の探索</anchor>により
<code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">history.state</anchor></code> の値が変更された時に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">発火</anchor>されます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="42" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[42]</anchor-end> <dfn><code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">PopStateEvent</anchor></code></dfn> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インターフェイス</anchor> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="41" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;41</anchor-internal></src> は、
<code class="DOMe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">popstate</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">イベント</anchor>と共に用いられます。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書環境</anchor><del>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ワーカー環境</anchor></del>に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">晒され</anchor>ています <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="41" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;41</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="44" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[44]</anchor-end> <code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">PopStateEvent</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インターフェイス</anchor>は、
他の <code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Event</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インターフェイス</anchor>同様の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">コンストラクター</anchor>を持ちます
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="41" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;41</anchor-internal></src>。
初期化のための辞書は <dfn><code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">PopStateEventInit</anchor></code></dfn> です <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="41" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;41</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="43" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[43]</anchor-end> <code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">PopStateEvent</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インターフェイス</anchor>は、
<code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Event</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インターフェイス</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">継承</anchor>しています <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="41" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;41</anchor-internal></src>。
<code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">PopStateEventInit</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">辞書</anchor>は、
<code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">EventInit</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">辞書</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">継承</anchor>しています <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="41" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;41</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="45" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[45]</anchor-end> <code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">PopStateEvent</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インターフェイス</anchor>および
<code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">PopStateEventInit</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">辞書</anchor>は、<code class="IDL" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">any</anchor></code>
型の読み取り専用<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IDL属性</anchor> <dfn><code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">state</anchor></code></dfn>を持ちます <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="41" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;41</anchor-internal></src>。
初期値は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">null</anchor> です <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="41" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;41</anchor-internal></src>。<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">履歴の探索</anchor>で <code class="DOMe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">popstate</anchor></code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">イベント</anchor>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">発火</anchor>される時は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">状態オブジェクト</anchor> (なければ <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">null</anchor>)
が設定されます。</p></section><section><h1>利用者インターフェイス</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="36" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[36]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">履歴</anchor>を参照。</p></section><section><h1>乱用</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="48" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[48]</anchor-end> 悪意のある<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">著者</anchor>が、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">利用者</anchor>の正常な<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">履歴</anchor>操作を妨害するために
<code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">pushState</anchor></code>/<code class="DOMe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">popstate</anchor></code>
を使うことがあります <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="47" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;47</anchor-internal></src>。
例えば<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">戻る</anchor>ボタンを無効化するための手段として、
あたかも正当な技法のように紹介する悪い人がいます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="96" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[96]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Webブラウザー</anchor>はそうした悪用を防ぐための対策を講じることができ (<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="35" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;35</anchor-internal>)、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">利用者</anchor>を保護することが期待されています。
最近の
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Webブラウザー</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">履歴</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インターフェイス</anchor>は、
複数まとめて戻るような機能が提供されていたりもします。
<sw-see xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"> <anchor>履歴</anchor> </sw-see></p><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="47" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[47]</anchor-end> <cite>HTML5 history apiで戻るボタン無効化 - Qiita</cite> (<time>2016-01-07 11:46:33 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://qiita.com/maruo327/items/a0502c8b508fed4ec169">http://qiita.com/maruo327/items/a0502c8b508fed4ec169</anchor-external></li></ul></refs><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="97" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[97]</anchor-end> 
<cite xml:lang="ja">ブラウザの履歴を操作して「戻る」ボタンで広告を出すやつについて – コーヒーサーバは香炉である</cite>, <time>2024-08-15T01:24:57.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://blog.maripo.org/2024/08/history-api-abuse/">https://blog.maripo.org/2024/08/history-api-abuse/</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="98" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[98]</anchor-end> 
<cite xml:lang="ja">XユーザーのP-Chanさん: 「ブラウザバック広告実装したことあるけど、技術的に可能なので、断るに断れなかった。 「Evil ですよ!? Evil ですよ!?」と言いながら実装した。 結果、めっちゃ効果あって、みんなやる理由が理解できた。 ブラウザ側で完全に技術的に不可能にして欲しい。」 / X</cite>, <time>午後8:06 · 2024年8月15日<attrvalue xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">2024-08-15T11:06:17.000Z</attrvalue></time>, <time>2024-08-16T01:41:30.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://x.com/p1ch_jp/status/1824039906957737987">https://x.com/p1ch_jp/status/1824039906957737987</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="99" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[99]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">技術者倫理</anchor>! っていいたいところだけど会社員や下請事業者としての立場もあるし難しいのう...
「みんなやってる」と断りにくさが急激に上がるよねえ。最初にやった奴は犯罪レベルだろ。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="100" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[100]</anchor-end> なぜこういうときに<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">神奈川県警</anchor>は仕事しないのか。</p><hr></hr><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="86" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[86]</anchor-end> 
ページを<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スクロール</anchor>していくだけで、
勝手にその位置を表す <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> (例えば記事に投稿されたコメントの <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor>
や、章節を表す <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor>、全体の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">パス</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">素片識別子</anchor>が違うもの)
に <code>replaceState</code> で置き換えていくサイトがあります。</p><p>この機能は一見便利そうですが、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor>
を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">共有</anchor>しようとする読者が思っていもいない <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor>
を渡してしまうので、
不便です。やめてほしいです。</p></section><section><h1>歴史</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end>
<cite>History management for &quot;Ajax&quot; applications - Anne’s Weblog</cite> (<code>2007-08-10 19:42:23 +09:00</code> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://annevankesteren.nl/2007/08/ajax-history">http://annevankesteren.nl/2007/08/ajax-history</anchor-external>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor> <weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">2007-08-10 16:32:50 +00:00</weak>)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end>
<cite>Re: several messages about pushState() and related ideas</cite> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Ian Hickson &lt;ian@...&gt;</anchor> 著, <time>2007-08-10 00:00:31 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://permalink.gmane.org/gmane.org.w3c.whatwg.discuss/11643">http://permalink.gmane.org/gmane.org.w3c.whatwg.discuss/11643</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <cite xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Web Applications 1.0</anchor> r5964 12277</cite>
( (<time>2011-03-25 09:55:00 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://html5.org/tools/web-apps-tracker?from=5963&amp;to=5964">http://html5.org/tools/web-apps-tracker?from=5963&amp;to=5964</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <cite xml:lang="en-us">Manipulating the browser history - <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MDC</anchor></cite>
(<time>2010-06-01 08:09:18 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history">https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> <cite><strong></strong>[<strong></strong>whatwg<strong></strong>]<strong></strong> Asynchronous history navigation and some inconsistencies</cite>
( (<time>2012-06-29 17:49:57 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-June/036505.html">http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-June/036505.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <cite>IRC logs: freenode / #whatwg / 20120629</cite>
( (<time>2012-07-15 16:06:48 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://krijnhoetmer.nl/irc-logs/whatwg/20120629">http://krijnhoetmer.nl/irc-logs/whatwg/20120629</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <cite xml:lang="en">Interview with Ian Hickson, HTML editor | HTML5 Doctor</cite>
( (<time>2013-01-13 18:27:28 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://html5doctor.com/interview-with-ian-hickson-html-editor/">http://html5doctor.com/interview-with-ian-hickson-html-editor/</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <cite>Issue 45361 - chromium - history.pushState does not update http referrer - An open-source project to help move the web forward. - Google Project Hosting</cite>
( (<time>2013-06-06 03:12:16 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://code.google.com/p/chromium/issues/detail?id=45361">https://code.google.com/p/chromium/issues/detail?id=45361</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <cite>Bug 40027 – location.href and outgoing referrer not updated properly by pushState/replaceState</cite>
( (<time>2013-06-06 03:13:42 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://bugs.webkit.org/show_bug.cgi?id=40027">https://bugs.webkit.org/show_bug.cgi?id=40027</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <cite xml:lang="en">622088 – XHR referer header is not modified with history.pushState</cite>
( (<time>2013-06-06 03:14:48 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://bugzilla.mozilla.org/show_bug.cgi?id=622088">https://bugzilla.mozilla.org/show_bug.cgi?id=622088</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> <cite xml:lang="en">History (Windows)</cite>
( (<time>2013-11-13 13:52:56 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://msdn.microsoft.com/en-us/library/ie/hh920758(v=vs.85).aspx">http://msdn.microsoft.com/en-us/library/ie/hh920758(v=vs.85).aspx</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <cite xml:lang="en"><strong></strong>[<strong></strong>whatwg<strong></strong>]<strong></strong> Proposal: Allow disabling of default scroll restoration 	behavior</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Majid Valipour</anchor> 著, <time>2015-03-20 02:31:31 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://lists.w3.org/Archives/Public/public-whatwg-archive/2015Mar/0070.html">https://lists.w3.org/Archives/Public/public-whatwg-archive/2015Mar/0070.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> <cite>Customizing Scroll Restoration - Google ドキュメント</cite>
(<time>2015-03-20 11:49:21 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://docs.google.com/a/chromium.org/document/d/1Tiu8PjvBtNOAgeh6yrs7bOrXxQcavQLiNtRJ_ToLlVM/edit?pli=1#heading=h.j26hb4a80gnf">https://docs.google.com/a/chromium.org/document/d/1Tiu8PjvBtNOAgeh6yrs7bOrXxQcavQLiNtRJ_ToLlVM/edit?pli=1#heading=h.j26hb4a80gnf</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> <cite xml:lang="en">Re: <strong></strong>[<strong></strong>whatwg<strong></strong>]<strong></strong> Proposal: Allow disabling of default scroll  restoration behavior</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Ian Hickson</anchor> 著, <time>2015-04-10 04:05:19 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://lists.w3.org/Archives/Public/public-whatwg-archive/2015Apr/0075.html">https://lists.w3.org/Archives/Public/public-whatwg-archive/2015Apr/0075.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end> <cite>defunkt/jquery-pjax</cite>
( (<time>2012-03-17 14:22:30 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/defunkt/jquery-pjax">https://github.com/defunkt/jquery-pjax</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="38" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[38]</anchor-end> <cite>IRC logs: freenode / #whatwg / 20090818</cite>
(<time>2009-10-12 16:14:46 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://krijnhoetmer.nl/irc-logs/whatwg/20090818#l-118">http://krijnhoetmer.nl/irc-logs/whatwg/20090818#l-118</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="39" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[39]</anchor-end> <cite><strong></strong>[<strong></strong>whatwg<strong></strong>]<strong></strong> history.popstate in Firefox4</cite>
( (<time>2012-01-31 08:28:43 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2012-January/034570.html">http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2012-January/034570.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="46" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[46]</anchor-end> <cite xml:lang="en">Add scroll restoration preference to history traversal · whatwg/html@dd6a34e</cite> (<time>2015-11-17 21:03:22 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/dd6a34ec3c191ee1968a0fc8d174b4ce3b615916">https://github.com/whatwg/html/commit/dd6a34ec3c191ee1968a0fc8d174b4ce3b615916</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="49" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[49]</anchor-end> <cite xml:lang="en">Fix #521: all URLs can be relative · whatwg/html@e99f0bd</cite>
(<time>2016-01-19 10:45:36 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/e99f0bd112e0216698bf9397b64b3f8064995756">https://github.com/whatwg/html/commit/e99f0bd112e0216698bf9397b64b3f8064995756</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="54" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[54]</anchor-end> <cite xml:lang="en">Write structured clone algorithm in terms of ECMAScript · whatwg/html@bfb960c</cite>
(<time>2016-03-02 16:40:50 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/bfb960c938580c95e77365e614218b952f96375b">https://github.com/whatwg/html/commit/bfb960c938580c95e77365e614218b952f96375b</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="55" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[55]</anchor-end> <cite xml:lang="en">Editorial: define Event attribute defaults through IDL · whatwg/html@0be0229</cite>
(<time>2016-03-23 21:15:19 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/0be02299f128cbb7c65a7ce259fdd838fd44a4b5">https://github.com/whatwg/html/commit/0be02299f128cbb7c65a7ce259fdd838fd44a4b5</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="56" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[56]</anchor-end> <cite xml:lang="en">Make it explicit that user agents can ignore replaceState/pushState · whatwg/html@38139b4</cite>
(<time>2016-04-07 17:55:02 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/38139b40d9b808c9bc8646df74c5c075ad7584fe">https://github.com/whatwg/html/commit/38139b40d9b808c9bc8646df74c5c075ad7584fe</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="72" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[72]</anchor-end> <cite>チェンジセット 198687 – WebKit</cite>
(<time>2016-04-17 13:52:37 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://trac.webkit.org/changeset/198687/">https://trac.webkit.org/changeset/198687/</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="73" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[73]</anchor-end> <cite xml:lang="en">Bug 155901 – Soften push/replaceState frequency restrictions</cite>
(<time>2016-04-17 13:53:01 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://bugs.webkit.org/show_bug.cgi?id=155901">https://bugs.webkit.org/show_bug.cgi?id=155901</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="74" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[74]</anchor-end> <cite xml:lang="en">Rename document's address to URL</cite>
( (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">annevk</anchor>著, <time>2016-05-06 02:06:55 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/16dd60cfb1cbd4ea3dcacc91f58b368b021ded33">https://github.com/whatwg/html/commit/16dd60cfb1cbd4ea3dcacc91f58b368b021ded33</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="75" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[75]</anchor-end> <cite xml:lang="en">Use USVString for all URLs</cite>
( (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">domenic</anchor>著, <time>2016-05-20 22:02:29 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/018b983b77b2cd908f6d00100e7e0abe893dd2c3">https://github.com/whatwg/html/commit/018b983b77b2cd908f6d00100e7e0abe893dd2c3</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="76" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[76]</anchor-end> <cite xml:lang="en"><strong>[</strong>giow<strong>]</strong> (2) Make sure to fire the relevant events on the Window object…</cite>
( (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Hixie</anchor>著, <time>2009-01-21 20:34:10 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/afdba55e4ae45f4c9d42c00902da1a0df7381aad">https://github.com/whatwg/html/commit/afdba55e4ae45f4c9d42c00902da1a0df7381aad</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="82" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[82]</anchor-end> <cite xml:lang="en">Use relevant settings object for pushState/replaceState URL parsing</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">domenic</anchor>著, <time>2016-07-07 01:48:15 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/b568cf93ac374c440e29e01a2619365dde7c45c8">https://github.com/whatwg/html/commit/b568cf93ac374c440e29e01a2619365dde7c45c8</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="84" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[84]</anchor-end> <cite xml:lang="en">Use the associated document for pushState/replaceState's origin check</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">domenic</anchor>著, <time>2016-07-13 06:50:14 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/60f84adcae2d252fc63afa6b65686a4590d28734">https://github.com/whatwg/html/commit/60f84adcae2d252fc63afa6b65686a4590d28734</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="85" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[85]</anchor-end> <cite xml:lang="en">PopStateEvent/HashChangeEvent/PageTransitionEvent are Window-only</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">zcorpan</anchor>著, <time>2016-09-13 21:25:40 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/dec1a5809e15d29592a66147ce2bed5018121b5f">https://github.com/whatwg/html/commit/dec1a5809e15d29592a66147ce2bed5018121b5f</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="88" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[88]</anchor-end> <cite xml:lang="en">Breaking: refactor structured clone into serialize/deserialize</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">domenic</anchor>著, <time>2017-03-21 06:09:33 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/97d644c97335956610a31e8ad98d1a388c063e84">https://github.com/whatwg/html/commit/97d644c97335956610a31e8ad98d1a388c063e84</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="89" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[89]</anchor-end> <cite xml:lang="en">Serializing and deserializing SharedArrayBuffer</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">annevk</anchor>著, <time>2017-04-28 16:38:26 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/b3f8779c76de7718bc970fdbccda18a5164d2f98">https://github.com/whatwg/html/commit/b3f8779c76de7718bc970fdbccda18a5164d2f98</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="90" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[90]</anchor-end> <cite xml:lang="en">Remove more types from document.createEvent()</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ayg</anchor>著, <time>2017-08-06 21:41:25 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/dom/commit/5a532da58455e55b1e611161b72224d083fee7d4">https://github.com/whatwg/dom/commit/5a532da58455e55b1e611161b72224d083fee7d4</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="91" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[91]</anchor-end> <cite xml:lang="en">Make popstate and hashchange events not bubble</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">foolip</anchor>著, <time>2018-06-07 21:23:33 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/85e1e724cf09574dba47d5eae689bdb5b7fd6502">https://github.com/whatwg/html/commit/85e1e724cf09574dba47d5eae689bdb5b7fd6502</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="92" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[92]</anchor-end> <cite xml:lang="en">Let the popstate and hashchange events not bubble by foolip · Pull Request #3737 · whatwg/html</cite>
(<time>2018-06-08 14:37:55 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/pull/3737">https://github.com/whatwg/html/pull/3737</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="93" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[93]</anchor-end> <cite xml:lang="en">document.open() can make a document's URL go out of sync with its history entry · Issue #3885 · whatwg/html</cite>
(<time>2018-09-05 22:41:47 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/issues/3885">https://github.com/whatwg/html/issues/3885</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="94" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[94]</anchor-end> <cite xml:lang="en">document.open() simplifications, part 2 by TimothyGu · Pull Request #3946 · whatwg/html</cite>
(<time>2018-09-05 22:43:43 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/pull/3946">https://github.com/whatwg/html/pull/3946</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="95" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[95]</anchor-end> <cite xml:lang="en">Editorial: Factor out history.push/replaceState() steps</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">TimothyGu</anchor>著, <time>2018-08-18 08:04:45 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/f42dcf0bf2ebf86bc5ca79aecea098a8fed6cf3e">https://github.com/whatwg/html/commit/f42dcf0bf2ebf86bc5ca79aecea098a8fed6cf3e</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="77" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[77]</anchor-end> <cite xml:lang="en">Editorial: Factor out history.push/replaceState() steps</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">TimothyGu</anchor>著, <time>2018-08-18 08:04:45 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/f42dcf0bf2ebf86bc5ca79aecea098a8fed6cf3e">https://github.com/whatwg/html/commit/f42dcf0bf2ebf86bc5ca79aecea098a8fed6cf3e</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="87" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[87]</anchor-end> 
<cite xml:lang="ja">リンクをクリックするだけでiOSデバイスが再起動してしまうWebサイト | スラド アップル</cite>, <time>2024-01-22T13:45:44.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://apple.srad.jp/story/16/01/29/0549256/">https://apple.srad.jp/story/16/01/29/0549256/</anchor-external></p></section></body></html>