<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><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> <dfn><code class="JS" xml:lang="en">document.write</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>に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字列</anchor>を挿入する <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">JavaScript</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="83" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[83]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM0</anchor> 時代には、 <code class="JS" xml:lang="en">document.write</code> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</anchor>の内容を任意に書き換える唯一の方法でした。
その後の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">API</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">document.write</code> は徐々に使われなくなりました。</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> <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="HTMLe" xml:lang="en">script</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>を実行し、そこから <code class="JS" xml:lang="en">document.write</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>の動作が複雑になる要因の1つとなっています。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><code xmlns="http://www.w3.org/1999/xhtml" class="JS" xml:lang="en">document.write</code> によって新たに <code xmlns="http://www.w3.org/1999/xhtml" class="HTMLe" xml:lang="en">script</code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>を注入することも可能です。</comment-p><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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <cite xml:lang="en-GB-x-hixie">HTML Standard</cite> (<time>2015-05-06 10:42:35 +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-document-write">https://html.spec.whatwg.org/#dom-document-write</anchor-external></li></ul></refs></section><section><h1>処理</h1><p><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> <code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Document</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インターフェイス</anchor>の
<dfn><code class="DOMm" xml:lang="en">write<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">document.write</title></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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal></src>。</p><figure class="steps"><ol><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>を、指定されたすべての<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:">DOMString</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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal></src>。</li><li><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> <var>入力</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="100" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[100]</anchor-end> <var>引数群</var>の各<var>引数</var>について、順に、<ol><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="101" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[101]</anchor-end> <var>入力</var>の末尾に<var>引数</var>を追加します。</li></ol></li><li><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> <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:">document write steps</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></ol></figure><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> <code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Document</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">インターフェイス</anchor>の
<dfn><code class="DOMm" xml:lang="en">writeln</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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal></src>。</p><figure class="steps"><ol><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="102" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[102]</anchor-end> <var>引数群</var>を、指定されたすべての<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:">DOMString</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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal></src>。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="103" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[103]</anchor-end> <var>入力</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="104" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[104]</anchor-end> <var>引数群</var>の各<var>引数</var>について、順に、<ol><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="105" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[105]</anchor-end> <var>入力</var>の末尾に<var>引数</var>を追加します。</li></ol></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="106" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[106]</anchor-end> <var>入力</var>の末尾に <code>U+000A</code> を追加します。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="107" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[107]</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:">document write steps</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></ol></figure><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> <dfn>document write steps</dfn> は、<var>文書</var>と<var>入力</var>を次のようにします。</p><figure class="steps"><ol><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> <figure class="list"><ul><li><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> <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:">XML文書</anchor></li><li><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> <var>文書</var>の <f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">throw-on-dynamic-markup-insertion counter</f> が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">正</anchor></li></ul></figure>... のいずれかの場合、<ol><li><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> <code class="DOMe" xml:lang="en">InvalidStateError</code> <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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal></src>。</li></ol></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="113" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[113]</anchor-end> 
<var>文書</var>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">活性構文解析器がabortされた</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="114" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[114]</anchor-end> 
ここで停止します。 <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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal></src></li></ol></li><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> <figure class="list"><ul><li><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> <var>文書</var>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">構文解析器</f>が <code>null</code></li><li><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> <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>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">未定義</anchor></li></ul></figure>... のいずれかの場合、<ol><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>文書</var>の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ignore-opens-during-unload counter</anchor> が<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:">ignore-destructive-writes counter</anchor> が<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="99" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[99]</anchor-end> ここで停止します <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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal></src>。</li></ol></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>文書</var>について、<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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal></src>。</li></ol></li><li><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> <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>に対し、
<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>の直前に、
<var>入力</var>を挿入します <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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal></src>。</li><li><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> <var>文書</var>に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">pending parsing-blocking script</anchor> がない場合、<ol><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> <var>文書</var>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">構文解析器</f>について、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">字句化器</anchor>が<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">挿入点</f>に達するか、<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:">abort</anchor>
するまで、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">構文解析器</anchor>を動作させます。
(<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</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:">abort</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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal></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="63" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[63]</anchor-end> <var xmlns="http://www.w3.org/1999/xhtml">文書</var>が<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="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</anchor>は <dfn><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ignore-destructive-writes counter</anchor></dfn> を持ちます。
その初期値は0です。 <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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</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="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:">Webブラウザー</anchor>は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script nesting level</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="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document.write</anchor></code> 呼び出しなら)
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">reload override buffer</anchor> に追記しないようです。
(そうしないと<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">再読込</anchor>後に <code xmlns="http://www.w3.org/1999/xhtml" class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document.write</anchor></code> された部分が二重になってしまいます。)
<time xmlns="http://www.w3.org/1999/xhtml">2015-05-07T03:21:43.200Z</time></comment-p></section><section><h1>文書の適合性への影響</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="112" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[112]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書の適合性</anchor>を参照。</p></section><section><h1>歴史</h1><section><h1>HTML 4</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> 仕様書:<ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML 4</anchor><ul><li><cite>18.2.4 Dynamic modification of documents</cite>
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="IW" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="HTML4:&quot;interact/scripts.html#idx-document&quot;">IW:HTML4:&quot;interact/scripts.html#idx-document&quot;</anchor-external></li><li><cite>18.2.3 Intrinsic events</cite>
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="IW" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="HTML4:&quot;interact/scripts.html#idx-control&quot;">IW:HTML4:&quot;interact/scripts.html#idx-control&quot;</anchor-external></li></ul></li></ul></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> HTML 4 の 18.2.4 は文書読込み時に実行される<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スクリプト</anchor>による文書内容の動的な編集について触れています。
そこでは <code class="JS"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.write</code> 
はその実現手段の一例として挙げられていますが、
実用的なレベルで存在したもので該当するのは他になかったでしょうし、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> が整理される以前の規定ですから、
<code class="JS">document.write</code> と HTML 文書・UA の関係に関する規定と捉えてよいでしょう。
また、一般の DOM による操作等は想定範囲外でしょうから、
拡大して解釈することには慎重であるべきと考えられます。</p><p>さて、 18.2.4 によれば、文書の動的な編集は次の通りモデル化できるそうです。<ol><li>すべての <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> が、
文書の読込まれる順序で評価されます。</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML</anchor> <code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CDATA</anchor></code> を生成する <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code>
要素中のスクリプト構造がすべて評価されます。
その生成文を結合したものが文書中の <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code>
要素の場所に挿入されます。</li><li>生成された <code class="SGML">CDATA</code> が再評価されます。</li></ol></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="118" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[118]</anchor-end> 
このモデルは、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML構文解析器</anchor>で HTML 文書から木構造を抽出し、
それを HTML 仕様書の規定する意味と表現によってレンダリングするという
SGML 的に本来あるべき UA の処理方法ではなく、 HTML
文書を適当に読込みながら適当に解析しつつ適当にレンダリングし続けるという
WWW ブラウザの伝統的な処理方法に依拠しているように思えます。</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>
HTML 4 仕様書に示された例によれば、<pre class="HTML example code"> &lt;TITLE&gt;Test Document&lt;/TITLE&gt;
 &lt;SCRIPT type=&quot;text/javascript&quot;&gt;
     document.write(&quot;&lt;p&gt;&lt;b&gt;Hello World!&lt;\/b&gt;&quot;)
 &lt;/SCRIPT&gt;</pre></p><p>は<pre class="HTML example code"> &lt;TITLE&gt;Test Document&lt;/TITLE&gt;
 &lt;P&gt;&lt;B&gt;Hello World!&lt;/B&gt;</pre></p><p>という HTML マークと同じ効果を持ちます。<q>効果</q>という曖昧な言葉を使っているため、
何を指しているのか (レンダリング結果? 出来上がる構造?) はっきりとはしませんが、
ともかくある意味においてこの2例は HTML 的に等価です。</p><p>ところが、 SGML 的には、前者は<pre class="HTML invalid example code">&lt;HTML&gt;&lt;HEAD&gt; &lt;TITLE&gt;Test Document&lt;/TITLE&gt;
 &lt;SCRIPT type=&quot;text/javascript&quot;&gt;
     document.write(&quot;&lt;p&gt;&lt;b&gt;Hello World!&lt;\/b&gt;&quot;)
 &lt;/SCRIPT&gt;
&lt;/HEAD&gt;&lt;/HTML&gt;</pre></p><p>と等価 (完全に交換可能) であり、</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">注: これだけでは <code xmlns="http://www.w3.org/1999/xhtml" class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</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>です。</comment-p><p>後者は<pre class="HTML example code">&lt;HTML&gt;&lt;HEAD&gt; &lt;TITLE&gt;Test Document&lt;/TITLE&gt;
 &lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;B&gt;Hello World!&lt;/B&gt;
&lt;/BODY&gt;&lt;/HTML&gt;</pre></p><p>と等価ですから、両者は異なる構造を持っています。そして、
<code class="JS">document.write</code> の結果は常に <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor></code>
内に書込まれるとか (これは先のモデルと矛盾します。)、
<code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">head</anchor></code> 内にも <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">p</anchor></code> 要素が含められるとか
(これは HTML DTD と矛盾します。) の仮定を置かない限り、
適切な結果が得られません。</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> HTML 4 は、次のようにも述べています。</p><blockquote><p>HTML 文書は、 <code class="HTMLe">script</code> 要素の処理の前後いずれにおいても
HTML DTD に適合するよう制約されます。</p></blockquote><p><code class="HTMLe">script</code> の出力であるからといって
<code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ul</anchor></code> 要素の子供に <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">td</anchor></code>
要素があっても困りますから、これは当然の規定といえましょう。
しかし、ここで、 <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;2</anchor-internal> とも関係しますが、
処理後の適合性は何について判断するのかという疑問が生じます。</p><pre class="HTML"> &lt;TITLE&gt;Test Document&lt;/TITLE&gt;
 &lt;SCRIPT type=&quot;text/javascript&quot;&gt;
     document.write(&quot;&lt;p&gt;&lt;b&gt;Hello World!&lt;\/b&gt;&quot;)
 &lt;/SCRIPT&gt;</pre><p>が <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;2</anchor-internal> の SGML 的解釈のように<pre class="HTML invalid example code">&lt;HTML&gt;&lt;HEAD&gt; &lt;TITLE&gt;Test Document&lt;/TITLE&gt;
 &lt;p&gt;&lt;b&gt;Hello World!&lt;/b&gt;
&lt;/HEAD&gt;&lt;/HTML&gt;</pre></p><p>となるなら、 (<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>がないことには目をつぶっても)
<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">head</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>内に <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">p</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>です。しかし、
一旦<pre class="HTML example code"> &lt;TITLE&gt;Test Document&lt;/TITLE&gt;
 &lt;p&gt;&lt;b&gt;Hello World!&lt;/b&gt;</pre></p><p>となり、更に<pre class="HTML example code">&lt;HTML&gt;&lt;HEAD&gt; &lt;TITLE&gt;Test Document&lt;/TITLE&gt;
 &lt;/HEAD&gt;&lt;BODY&gt;&lt;p&gt;&lt;b&gt;Hello World!&lt;/b&gt;
&lt;/BODY&gt;&lt;/HTML&gt;</pre></p><p>と解釈されるなら、この文書片は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">妥当</anchor>です。</p><p>また、<pre class="HTML">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;&gt;
<ins>...</ins>
&lt;script type=&quot;text/javascript&quot;&gt;
  document.write ('&lt;p&gt;');
&lt;/script&gt;
A paragraph.
<ins>...</ins></pre></p><p>は、果たして<pre class="HTML">&lt;p&gt;
A paragraph?
&lt;/p&gt;</pre></p><p>でしょうか、<pre class="HTML">&lt;p&gt;&lt;/p&gt;
A paragraph?</pre></p><p>でしょうか。 (この例はどちらの解釈でも結果は<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="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <strong>スクリプト実行結果の静的妥当性検証</strong>:
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;2</anchor-internal>-3 のような仕様の解釈に関する問題があるとはいえ、
ある解釈を選べば、ある文書がスクリプト実行後に DTD
妥当であるか否かはスクリプトを実際に実行してみれば容易に判断できます。</p><p>一方で、スクリプトを実行せずとも出力が妥当であるかどうかを検証できれば、
(<code class="JS">document.write</code> はもう使われなくなっていますが、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CGIスクリプト</anchor>などにも応用できますから) 便利かもしれません。
実際にその方法を研究していた人もいたようですが、
良い方法は見つかっていません。</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> <strong>スクリプト実行後の文書構造</strong>:
現代の UA などは文書をその構造によって保持しています。 HTML
文書は読込まれると構文解析されて <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> 
などのモデルによる木として記憶上で持っているか、
持っているかのように操作できるようになっています。</p><p>そうすると、 <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;2</anchor-internal> の規定を忠実に解釈すると、結果の文書木に
<code class="HTMLe">script</code> 要素は含まれないことになってしまいます。</p><p>?? WinIE や Gecko はどうしている ??</p><p>また、 <code class="JS">document</code> 物体は DOM の <code class="DOMi"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Document</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="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内在事象取扱器</anchor>で <code class="JS">document.write</code> すると、
新しい文書が作られてそこに書かれるそうです <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">18.2.3 Note</src>。
それもまたおかしな話です。</p></section><section><h1>DOM2 HTML</h1><ed xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">TBW</ed><form xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" ref="comment"></form><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="117" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[117]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CEA-2014-B</anchor></p></section><section><h1>XHTML1 との関係</h1><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 xml:lang="ja">空繰再繰 - application/xhtml+xmlなページでdocument.writeを動作させる #2</cite> (<code>2007-05-01 11:21:43 +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://nyarla.net/blog/javascript-tips6">http://nyarla.net/blog/javascript-tips6</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-05-01 02:24:18 +00:00</weak>)</p><p><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> <cite xml:lang="ja">document.writeを完全にDOM仕様にする - 空繰再繰</cite> (<time>2009-01-10 14:15:20 +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://blog.nyarla.net/2007/11/17/1">http://blog.nyarla.net/2007/11/17/1</anchor-external></p></section><section><h1>メモ</h1><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>d:id:quaa</cite> (<code>2006-11-28 10:39:05 +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://d.hatena.ne.jp/quaa/20061227#p1">http://d.hatena.ne.jp/quaa/20061227#p1</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:">2006-12-28 01:52:17 +00:00</weak>)</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>
<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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0Adocument.write%20('%3Cstyle%3E%20p%20%7Bcolor%3A%20green%20%7D%20%3C%2Fst')%3B%0A%3C%2Fscript%3Eyle%3E%0A%3Cp%3EPASS%20iff%20green%3C%2Fp%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0Adocument.write%20('%3Cstyle%3E%20p%20%7Bcolor%3A%20green%20%7D%20%3C%2Fst')%3B%0A%3C%2Fscript%3Eyle%3E%0A%3Cp%3EPASS%20iff%20green%3C%2Fp%3E</anchor-external></p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 も <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> 7 も PASS。</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>
<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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0Adocument.write%20('%3Cstyle%3E%20p%20%7Bcolor%3A%20gr')%3B%0A%3C%2Fscript%3Eeen%20%7D%20%3C%2Fstyle%3E%0A%3Cp%3EPASS%20iff%20green%3C%2Fp%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0Adocument.write%20('%3Cstyle%3E%20p%20%7Bcolor%3A%20gr')%3B%0A%3C%2Fscript%3Eeen%20%7D%20%3C%2Fstyle%3E%0A%3Cp%3EPASS%20iff%20green%3C%2Fp%3E</anchor-external></p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 も <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> 7 も PASS。</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>
<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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cp%3EFAIL%3C%2Fp%3E%0A%3Cscript%20defer%3E%0A%20%20document.write%20('%3Cstyle%3Ep%20%7Bcolor%3A%20green%7D%3C%2Fstyle%3E')%3B%0A%3C%2Fscript%3E%0A%3Cscript%20defer%3E%0A%20%20document.write%20('%3Cp%3EPASS%20iff%20green%3C%2Fp%3E')%3B%0A%3C%2Fscript%3E%20%0A%3Cstyle%3E%0Ap%20%7B%20color%3A%20red%20%7D%0A%3C%2Fstyle%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cp%3EFAIL%3C%2Fp%3E%0A%3Cscript%20defer%3E%0A%20%20document.write%20('%3Cstyle%3Ep%20%7Bcolor%3A%20green%7D%3C%2Fstyle%3E')%3B%0A%3C%2Fscript%3E%0A%3Cscript%20defer%3E%0A%20%20document.write%20('%3Cp%3EPASS%20iff%20green%3C%2Fp%3E')%3B%0A%3C%2Fscript%3E%20%0A%3Cstyle%3E%0Ap%20%7B%20color%3A%20red%20%7D%0A%3C%2Fstyle%3E</anchor-external></p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 7</anchor> は DOM view はただしいが、なぜか Rendered view
には何もレンダリングされない。</p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 は FAIL (<code class="HTMLa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">defer</anchor></code> 未対応)。</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>
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;13</anchor-internal> の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 7</anchor> で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">レンダリング</anchor>されないのは
<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> が2つあるかららしく、
<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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cp%3EFAIL%3C%2Fp%3E%0D%0A%3Cscript%20defer%3E%0D%0A%20%20document.write%20('%3Cstyle%3Ep%20%7Bcolor%3A%20green%7D%3C%2Fstyle%3E')%3B%0D%0A%20%20document.write%20('%3Cp%3EPASS%20iff%20green%3C%2Fp%3E')%3B%0D%0A%3C%2Fscript%3E%20%0D%0A%3Cstyle%3E%0D%0Ap%20%7B%20color%3A%20red%20%7D%0D%0A%3C%2Fstyle%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cp%3EFAIL%3C%2Fp%3E%0D%0A%3Cscript%20defer%3E%0D%0A%20%20document.write%20('%3Cstyle%3Ep%20%7Bcolor%3A%20green%7D%3C%2Fstyle%3E')%3B%0D%0A%20%20document.write%20('%3Cp%3EPASS%20iff%20green%3C%2Fp%3E')%3B%0D%0A%3C%2Fscript%3E%20%0D%0A%3Cstyle%3E%0D%0Ap%20%7B%20color%3A%20red%20%7D%0D%0A%3C%2Fstyle%3E</anchor-external>
なら<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="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end>
<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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cp%3EFAIL%3C%2Fp%3E%0D%0A%3Cscript%20defer%3E%0D%0A%20%20document.write%20('%3Cstyle%3Ep%20%7Bcolor%3A%20green%7D%3C%2Fstyle%3E')%3B%0D%0A%20%20document.write%20('%3Cp%3EPASS%20iff%20green%3C%2Fp%3E')%3B%0D%0A%3C%2Fscript%3E%20%0D%0A%3Cscript%3E%0D%0A%20%20document.write%20('%3Cstyle%3Ep%20%7B%20color%3A%20red%20%7D%3C%2Fstyle%3E')%3B%0D%0A%20%20document.write%20('%3Cp%3EFAIL%3C%2Fp%3E')%3B%0D%0A%3C%2Fscript%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cp%3EFAIL%3C%2Fp%3E%0D%0A%3Cscript%20defer%3E%0D%0A%20%20document.write%20('%3Cstyle%3Ep%20%7Bcolor%3A%20green%7D%3C%2Fstyle%3E')%3B%0D%0A%20%20document.write%20('%3Cp%3EPASS%20iff%20green%3C%2Fp%3E')%3B%0D%0A%3C%2Fscript%3E%20%0D%0A%3Cscript%3E%0D%0A%20%20document.write%20('%3Cstyle%3Ep%20%7B%20color%3A%20red%20%7D%3C%2Fstyle%3E')%3B%0D%0A%20%20document.write%20('%3Cp%3EFAIL%3C%2Fp%3E')%3B%0D%0A%3C%2Fscript%3E</anchor-external></p><p><code class="JS" xml:lang="en">document.write</code> というより
<code class="HTMLa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">defer</anchor></code> のテスト。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 7</anchor> は PASS。</p><p>後の <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> 内に <code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">alert</anchor>()</code> を入れれば、
ちゃんと後の <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> も実行されていることが確認できる。</p><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>
<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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cscript%3E%20document.write%20(%22aa%22)%3B%20%3C%2Fsc')%3B%0A%20%20document.write%20('ript%3E')%3B%0A%3C%2Fscript%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cscript%3E%20document.write%20(%22aa%22)%3B%20%3C%2Fsc')%3B%0A%20%20document.write%20('ript%3E')%3B%0A%3C%2Fscript%3E</anchor-external></p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 でも <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 7</anchor> でも、 <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code>
内の <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> が実行され、<q>aa</q> と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">レンダリング&amp;#65379;&amp;#65379;されます。</anchor>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML 5</anchor> の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">構文解析算法</anchor>でも、ややこしいですがおそらく、
<q>aa</q> と&amp;#65378;&amp;#65378;レンダリング]]されるのが正しい動作です。
(1つ目の <code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor></code>
によって行われる<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">構文解析</anchor>で、与えられた&amp;#65378;&amp;#65378;引数]]の末尾に到達したところで、
<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="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</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>が停止したところで一旦終わるので、
<code class="HTMLe" xml:lang="en">&lt;/<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">終了タグ&amp;#65379;&amp;#65379;の直前までいきます。ここで、 <code xmlns="http://www.w3.org/1999/xhtml" class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor></code> は<anchor>返る</anchor>のですが、</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="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</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>の <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</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><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-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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cstyle%3E%20p%20%7B')%3B%0Aw(document.documentElement.innerHTML)%3B%0A%20%20document.write%20('color%3A%20gree')%3B%0Aw(document.documentElement.innerHTML)%3B%20%0A%20%20document.write%20('n%20%7D')%3B%0A%3C%2Fscript%3E%3C%2Fstyle%3E%3Cp%3Exxxx">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cstyle%3E%20p%20%7B')%3B%0Aw(document.documentElement.innerHTML)%3B%0A%20%20document.write%20('color%3A%20gree')%3B%0Aw(document.documentElement.innerHTML)%3B%20%0A%20%20document.write%20('n%20%7D')%3B%0A%3C%2Fscript%3E%3C%2Fstyle%3E%3Cp%3Exxxx</anchor-external></p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 7</anchor> でも <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 でも、緑の<q>xxxx</q>が<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-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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cstyle%3E')%3B%0Aw%20(document.documentElement.innerHTML)%3B%0A%20%20document.write%20('color%3A%20gree')%3B%0Aw%20(document.documentElement.innerHTML)%3B%20%0A%20%20document.write%20('n%20%7D')%3B%0A%3C%2Fscript%3E%3C%2Fstyle%3E%3Cp%3Exxxx%0A%3Cscript%3E%0Aw%20(document.documentElement.innerHTML)%3B%20%0A%3C%2Fscript%3E%0A%3Cpre%3E%0Axxxx">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cstyle%3E')%3B%0Aw%20(document.documentElement.innerHTML)%3B%0A%20%20document.write%20('color%3A%20gree')%3B%0Aw%20(document.documentElement.innerHTML)%3B%20%0A%20%20document.write%20('n%20%7D')%3B%0A%3C%2Fscript%3E%3C%2Fstyle%3E%3Cp%3Exxxx%0A%3Cscript%3E%0Aw%20(document.documentElement.innerHTML)%3B%20%0A%3C%2Fscript%3E%0A%3Cpre%3E%0Axxxx</anchor-external></p><p><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor></code> による追加分が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">木</anchor>に反映されるのはいつか?
(ここでは <code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">innerHTML</anchor></code> を使用。)</p><ul><li>通常の<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</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor></code>
で与えられたものすべてが既に反映済み</li><li><code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">style</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の場合、<ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 7</anchor> では <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">style</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:">空</anchor>のまま</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 では<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">終了タグ</anchor>が処理されるまで
<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">style</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>自体が追加されない</li></ul></li></ul><p>(<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="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end>
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;19</anchor-internal> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 7</anchor> で <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">style</anchor></code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の <code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">sheet</anchor></code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor>は <code class="DOM" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">null</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="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[21]</anchor-end>
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;20</anchor-internal> 訂正: <code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">styleSheet</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><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>
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;19</anchor-internal> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera</anchor> 9.27、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Safari</anchor> 3.1.1 では、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 7</anchor> 同様、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">終了タグ</anchor>を処理するまでは空のままのようです。
<code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">sheet</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>)</p><p><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>
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="22" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;22</anchor-internal> <code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">sheet</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>が処理されるまでずっと空のままのようです。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0D%0A%20%20document.write%20('%3Cstyle%3E')%3B%0D%0A%20%20document.write%20('p%20%7B%20color%3A%20green%20%7D')%3B%0D%0A%20%20w%20(document.getElementsByTagName%20('style')%5B0%5D.sheet.cssRules.length)%3B%0D%0A%3C%2Fscript%3E%3C%2Fstyle%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0D%0A%20%20document.write%20('%3Cstyle%3E')%3B%0D%0A%20%20document.write%20('p%20%7B%20color%3A%20green%20%7D')%3B%0D%0A%20%20w%20(document.getElementsByTagName%20('style')%5B0%5D.sheet.cssRules.length)%3B%0D%0A%3C%2Fscript%3E%3C%2Fstyle%3E</anchor-external></comment-p><p>(<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="24" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[24]</anchor-end>
<code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor> ('&lt;pre&gt;\na&lt;/pre&gt;')</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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0D%0A%20%20document.write%20('%3Cpre%3E%5Cna%3C%2Fpre%3E')%3B%0D%0A%3C%2Fscript%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0D%0A%20%20document.write%20('%3Cpre%3E%5Cna%3C%2Fpre%3E')%3B%0D%0A%3C%2Fscript%3E</anchor-external></p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 7</anchor>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera</anchor> 9.27, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Safari</anchor> 3.1.1 のいずれも、
<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><p><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>
<code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor> ('&lt;pre&gt;'); <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor> ('\na&lt;/pre&gt;')</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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cpre%3E')%3B%0A%20%20document.write%20('%5Cna%3C%2Fpre%3E')%3B%0A%3C%2Fscript%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cpre%3E')%3B%0A%20%20document.write%20('%5Cna%3C%2Fpre%3E')%3B%0A%3C%2Fscript%3E</anchor-external></p><p><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="24" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;24</anchor-internal> の4ブラウザ中、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 だけは<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">改行</anchor>を無視<em>せず</em>。
(<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="26" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[26]</anchor-end>
<code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor> ('&lt;pre&gt;', '\na&lt;/pre&gt;');</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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cpre%3E'%2C%20'%5Cna%3C%2Fpre%3E')%3B%0A%3C%2Fscript%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cpre%3E'%2C%20'%5Cna%3C%2Fpre%3E')%3B%0A%3C%2Fscript%3E</anchor-external></p><p>これなら <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 も<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="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[27]</anchor-end>
<code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">writeln</anchor> ('&lt;pre&gt;'); <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor> ('a&lt;/pre&gt;');</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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.writeln%20('%3Cpre%3E')%3B%0A%20%20document.write%20('a%3C%2Fpre%3E')%3B%0A%3C%2Fscript%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.writeln%20('%3Cpre%3E')%3B%0A%20%20document.write%20('a%3C%2Fpre%3E')%3B%0A%3C%2Fscript%3E</anchor-external></p><p>だけどこっちは <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 が<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><p><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>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera</anchor> 9.27 と <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Safari</anchor> 3.1.1 の結果</p><p><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;11</anchor-internal>、<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;12</anchor-internal> PASS</p><p><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;13</anchor-internal>、<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> FAIL (<code class="HTMLa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">defer</anchor></code> 未対応)</p><p><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;16</anchor-internal> 同じ (実行される)</p><p>(<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="29" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[29]</anchor-end>
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;19</anchor-internal> みたいなことを <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>を書き出す場合でやってみた
<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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0Aw%20(document.documentElement.innerHTML)%3B%0A%20%20document.write%20('%3Cscript%3E%20document.')%3B%0Aw%20(document.documentElement.innerHTML)%3B%0A%20%20document.write%20('write%20(%22a%22)%3B%20%3C%2F'%20%2B%20'script%3E')%3B%0Aw%20(document.documentElement.innerHTML)%3B%0A%3C%2Fscript%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0Aw%20(document.documentElement.innerHTML)%3B%0A%20%20document.write%20('%3Cscript%3E%20document.')%3B%0Aw%20(document.documentElement.innerHTML)%3B%0A%20%20document.write%20('write%20(%22a%22)%3B%20%3C%2F'%20%2B%20'script%3E')%3B%0Aw%20(document.documentElement.innerHTML)%3B%0A%3C%2Fscript%3E</anchor-external></p><p>4ブラウザとも、 <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>が
<code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">innerHTML</anchor></code> に現れるのは<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">終了タグ</anchor>が処理されたあとのようです。</p><p>この例だと <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Safari</anchor> だけは3番目の <code>w</code> で生成された
<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>によって書き込まれた
<code>a</code> が反映されていないのですが、
これはその <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</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:">DOM</anchor> に追加されないという (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Safari</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="30" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[30]</anchor-end>
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="29" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;29</anchor-internal> </p><p>書き出される <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>が実行される時点での
<code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">innerHTML</anchor></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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0D%0A%20%20document.write%20('%3Cscript%3E%20w%20(document.documentElement.innerHTML)%3B%20document.')%3B%0D%0A%20%20document.write%20('write%20(%22a%22)%3B%20%3C%2F'%20%2B%20'script%3E')%3B%0D%0A%3C%2Fscript%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0D%0A%20%20document.write%20('%3Cscript%3E%20w%20(document.documentElement.innerHTML)%3B%20document.')%3B%0D%0A%20%20document.write%20('write%20(%22a%22)%3B%20%3C%2F'%20%2B%20'script%3E')%3B%0D%0A%3C%2Fscript%3E</anchor-external></p><p>書き出された <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</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:">DOM</anchor>
に追加された状態の <code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">innerHTML</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="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[31]</anchor-end>
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="30" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;30</anchor-internal> は4ブラウザとも。
(<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="32" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[32]</anchor-end>
<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> の途中からが外側の
<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の後にいっていてもよいのか?
<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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cscript%3E%20w%20(document.documentElement.innerHTML)%3B%20document.')%3B%0A%20%20document.write%20('write%20(%22a')%3B%0A%3C%2Fscript%3E%22)%3B%20%3C%2Fscript%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20('%3Cscript%3E%20w%20(document.documentElement.innerHTML)%3B%20document.')%3B%0A%20%20document.write%20('write%20(%22a')%3B%0A%3C%2Fscript%3E%22)%3B%20%3C%2Fscript%3E</anchor-external></p><p>4ブラウザともおk (<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</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><p><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>
わけがわからないくらい複雑な例 with <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> <code class="HTMLa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">src</anchor></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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%20src%3D%22javascript%3A'%20document.write%20(%26quot%3Baaaaa%26quot%3B)%3B%20'%22%3E%3C%2Fscript%3E%0A%3Cscript%3E%0A%20%20document.write%20(%22%3Cscript%3Edocument.write%20('%3Cscript%20src%3Djavascript%3A%26apos%3Bdocument.write(%26quot%3Baaaaa%26quot%3B)%3B%26apos%3B%3E%3C%2F'%2C%20'script%3E%3Cscript%3E%20document.wri')%3B%3C%2F%22%2C%20%22script%3E%22)%3B%0A%3C%2Fscript%3Ete%20('ccc')%3B%20%3C%2Fscript%3E">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%20src%3D%22javascript%3A'%20document.write%20(%26quot%3Baaaaa%26quot%3B)%3B%20'%22%3E%3C%2Fscript%3E%0A%3Cscript%3E%0A%20%20document.write%20(%22%3Cscript%3Edocument.write%20('%3Cscript%20src%3Djavascript%3A%26apos%3Bdocument.write(%26quot%3Baaaaa%26quot%3B)%3B%26apos%3B%3E%3C%2F'%2C%20'script%3E%3Cscript%3E%20document.wri')%3B%3C%2F%22%2C%20%22script%3E%22)%3B%0A%3C%2Fscript%3Ete%20('ccc')%3B%20%3C%2Fscript%3E</anchor-external></p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 では、最初の
<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>があるかないか
(<code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">javascript</anchor>:</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor> を使っていることに起因している模様)、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Live DOM Viewer</anchor> 内で見るかどうか、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Live DOM Viewer</anchor> でも直接入力か permalink 使用かによって結果が変わってくる
(2つ目の <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> による書き込みが反映されたりされなかったりする、というか <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor></code> が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor>
に現れなかったり、 <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor></code> が2つでてきたり、よくわからん。) ようです。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Live DOM Viewer</anchor> かどうかで結果が変わるのは、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Live DOM Viewer</anchor> 自体が <code xmlns="http://www.w3.org/1999/xhtml" class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor></code> を使っているせいでしょう。</comment-p><p>(<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="34" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[34]</anchor-end>
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="33" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;33</anchor-internal> 他の3ブラウザはいずれも <q>ccc</q> とだけでてきます。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Safari</anchor> と <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> は、
<code class="HTMLa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">src</anchor></code> 内の <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">javascript</anchor>:</code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor> を実行していないようです。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera</anchor> は外部スクリプト内の
<code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</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="35" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[35]</anchor-end>
<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> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera</anchor> は <code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor></code> を実行しないのではなく、
<code class="HTMLa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">javascript</anchor>:</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</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>に
<q>リンク先のスクリプトを読み込むことができません</q>とでてきます。
(<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="36" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[36]</anchor-end>
<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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%20src%3D%22javascript%3A%20document.write%20('x')%3B%20%22%3E%3C%2Fscript%3E%20%20%20">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%20src%3D%22javascript%3A%20document.write%20('x')%3B%20%22%3E%3C%2Fscript%3E%20%20%20</anchor-external></p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera</anchor> では <q>x</q> が <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>中にでてきます。</p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> の <code class="HTMLa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">src</anchor></code> 内の <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">javascripot</anchor>:</code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor> の実行される文脈では文書本体の <code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Global</anchor></code>
<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:">window</anchor></code> にも <code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor></code>
にもその他<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:">ReferenceError</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="37" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[37]</anchor-end>
<cite xml:lang="en">Hixie's Natural Log: Tag Soup: Blocks-in-inlines</cite> (<code>2008-04-25 22:46:42 +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://ln.hixie.ch/?start=1138169545&amp;count=1">http://ln.hixie.ch/?start=1138169545&amp;count=1</anchor-external>
(<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="38" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[38]</anchor-end>
<cite xml:lang="en">Hixie's Natural Log: Why document.write() doesn't work in XML</cite> (<code>2008-04-25 22:48:57 +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://ln.hixie.ch/?start=1091626816&amp;count=1">http://ln.hixie.ch/?start=1091626816&amp;count=1</anchor-external>
(<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="39" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[39]</anchor-end>
<cite xml:lang="en">Hixie's Natural Log: Tag Soup: appendChild() of a script that calls document.write()</cite> (<code>2008-04-25 22:49:24 +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://ln.hixie.ch/?start=1155195074&amp;count=1">http://ln.hixie.ch/?start=1155195074&amp;count=1</anchor-external>
(<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="40" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[40]</anchor-end>
<cite>Index of /tests/adhoc/dom/level0/write</cite> (<code>2008-04-25 23:07:32 +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://hixie.ch/tests/adhoc/dom/level0/write/">http://hixie.ch/tests/adhoc/dom/level0/write/</anchor-external>
(<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="41" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[41]</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="42" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[42]</anchor-end>
<code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">write</anchor></code> で始まった
<code xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CDATA</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-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://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20(%22%3Cstyle%3E%20p%20%7B%22)%3B%0A%20%20w%20(document.documentElement.innerHTML)%3B%0A%3C%2Fscript%3E%20color%3A%20green%3B%0A%3Cscript%3E%0A%20%20document.write%20('%7D%20%3C%2Fstyle%3E')%3B%0A%3C%2Fscript%3E%3Cp%3Exxxx%0A">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cscript%3E%0A%20%20document.write%20(%22%3Cstyle%3E%20p%20%7B%22)%3B%0A%20%20w%20(document.documentElement.innerHTML)%3B%0A%3C%2Fscript%3E%20color%3A%20green%3B%0A%3Cscript%3E%0A%20%20document.write%20('%7D%20%3C%2Fstyle%3E')%3B%0A%3C%2Fscript%3E%3Cp%3Exxxx%0A</anchor-external></p><p>4ブラウザとも、<code class="HTML" xml:lang="en">&lt;/<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor>&gt;</code> 以後も<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容モデル旗</anchor>は
<code xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CDATA</anchor></code> にしたまま処理を続行するようで、
次の <code class="HTML" xml:lang="en">&lt;<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">script</anchor>&gt;</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>として処理します。</p><p>(<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="43" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[43]</anchor-end>
<cite xml:lang="en">Live Scripting HTML Parser</cite> (<code>2008-04-27 20:27:04 +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://suika.fam.cx/www/markup/html/scripting-parser/parser">http://suika.fam.cx/www/markup/html/scripting-parser/parser</anchor-external>
(<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="44" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[44]</anchor-end>
<cite>Bug 95487 &amp;#8211; JavaScript-generated table never completes</cite> (<code>2008-06-18 09:05:55 +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="https://bugzilla.mozilla.org/show_bug.cgi?id=95487">https://bugzilla.mozilla.org/show_bug.cgi?id=95487</anchor-external>
(<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="45" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[45]</anchor-end>
<cite xml:lang="ja">document.write()の実行タイミングをずらす方法</cite> (<code>2008-06-22 15:16:43 +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://p2b.jp/index.php?UID=1153728573">http://p2b.jp/index.php?UID=1153728573</anchor-external>
(<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="46" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[46]</anchor-end>
<cite>最速インターフェース研究会 :: ページレンダリングを妨げないdocument.writeの実装</cite> (<code>2008-06-22 15:21:04 +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://la.ma.la/blog/diary_200612061928.htm">http://la.ma.la/blog/diary_200612061928.htm</anchor-external>
(<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="47" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[47]</anchor-end>
<cite>Fenrir's BLog: Ajaxでdocument.writeするJavaScriptへの対策</cite> (<code>2008-06-02 14:24:53 +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://fenrir.naruoka.org/archives/000555.html">http://fenrir.naruoka.org/archives/000555.html</anchor-external>
(<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="48" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[48]</anchor-end>
<cite xml:lang="ja-JP">野ログはノロキュアMaxHeart - document.writeをバッファリングするJavaScript</cite> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">nog</anchor> 著, <code>2008-04-18 09:41:41 +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://cureblack.com/20080418.html#p01">http://cureblack.com/20080418.html#p01</anchor-external>
(<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="49" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[49]</anchor-end>
<cite>Javascriptの外部ファイル内でdocument.writeしたら文字化け(Mac IE 4.5編)</cite> (<time>2007-02-19 06:57: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://www.shtml.jp/mojibake/macie45.html">http://www.shtml.jp/mojibake/macie45.html</anchor-external></p><p><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> <cite xml:lang="en">Web Applications 1.0 r5616     Change how document.write() is ignored.Fixing http://www.w3.org/Bugs/Public/show_bug.cgi?id=9767</cite>
( (<time>2010-10-13 06:20: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=5615&amp;to=5616">http://html5.org/tools/web-apps-tracker?from=5615&amp;to=5616</anchor-external></p><p><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> <cite>IRC logs: freenode / #whatwg / 20101013</cite>
( (<time>2010-10-23 23:42:03 +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/20101013">http://krijnhoetmer.nl/irc-logs/whatwg/20101013</anchor-external></p><p><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> <cite xml:lang="en">Web Applications 1.0 r6924 More tweaks to the text (including a comment that describes one of the situations in question).Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=14275</cite>
( (<time>2012-01-27 09:30: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=6923&amp;to=6924">http://html5.org/tools/web-apps-tracker?from=6923&amp;to=6924</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><strong></strong>[<strong></strong>whatwg<strong></strong>]<strong></strong> HTMLLinkElement.disabled and HTMLLinkElement.sheet behavior</cite>
( (<time>2012-08-28 04:46: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/pipermail/whatwg-whatwg.org/2012-August/037001.html">http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-August/037001.html</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">Web Applications 1.0 r7290     Change how &lt;script&gt; is handled in re-entrant parser situations when there's a blocking style sheet.</cite>
( (<time>2012-08-28 13:48: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=7289&amp;to=7290">http://html5.org/tools/web-apps-tracker?from=7289&amp;to=7290</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">Web Applications 1.0 r7757     Try to define when document.open() doesn't work more precisely.</cite>
( (<time>2013-03-16 07:41: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=7756&amp;to=7757">http://html5.org/tools/web-apps-tracker?from=7756&amp;to=7757</anchor-external></p><p><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> <cite xml:lang="en">Web Applications 1.0 r7869     Make document.write() a no-op on non-active documents.</cite>
( (<time>2013-05-29 05:47: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=7868&amp;to=7869">http://html5.org/tools/web-apps-tracker?from=7868&amp;to=7869</anchor-external></p><figure><figcaption><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> 
<cite>新暦と旧暦の変換計算(長期)</cite> (<time>2006-05-28 08:57:13 +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://koyomi8.com/9reki/9rekicgi.htm">http://koyomi8.com/9reki/9rekicgi.htm</anchor-external><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="59" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[59]</anchor-end> <code xmlns="http://www.w3.org/1999/xhtml" class="HTMLa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">action</anchor></code> を可変にするために <code xmlns="http://www.w3.org/1999/xhtml" class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">document.write</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:">HTML</anchor> として記述されています。</comment-p></figcaption><pre class="HTML code">&lt;SCRIPT Language=&quot;JavaScript&quot;&gt;
&lt;!--
document.writeln('&lt;form NAME=&quot;9reki&quot; method=&quot;POST&quot; action=&quot;' + CGISERVER + 'cgi/9reki_f.cgi&quot;&gt;');
// --&gt;
&lt;/SCRIPT&gt;</pre></figure><p><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> <cite xml:lang="en">bug 5562 – 無限にdocument.write()を繰り返してメモリを食いつぶしていくと再パース処理でクラッシュする</cite>
( (<time>2014-12-19 18:15: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://bugzilla.mozilla.gr.jp/show_bug.cgi?id=5562">http://bugzilla.mozilla.gr.jp/show_bug.cgi?id=5562</anchor-external></p><p><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> <cite xml:lang="en">430574 – Infinite document.write() loop hangs, fills memory, and crashes</cite>
( (<time>2014-12-19 18:16:32 +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=430574">https://bugzilla.mozilla.org/show_bug.cgi?id=430574</anchor-external></p><p><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> <cite>IRC logs: freenode / #whatwg / 20150528</cite>
(<time>2015-05-29 16:21:13 +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/20150528">http://krijnhoetmer.nl/irc-logs/whatwg/20150528</anchor-external></p><p><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> <cite xml:lang="en">Formalize custom element reactions · whatwg/html@27aa7bc</cite>
(<time>2016-04-26 18:51: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/27aa7bc4fa6f168654a8c858f0773e611f679b39">https://github.com/whatwg/html/commit/27aa7bc4fa6f168654a8c858f0773e611f679b39</anchor-external></p><figure class="amazon"><p>JavaScript</p></figure><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">Clarify the note about reentrant parsing in document.write()</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">domenic</anchor>著, <time>2016-08-15 17:30: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://github.com/whatwg/html/commit/d6630fe808e48898108dc671025c0bcad5048cc3">https://github.com/whatwg/html/commit/d6630fe808e48898108dc671025c0bcad5048cc3</anchor-external></p><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> <cite xml:lang="en">Make document.write etc. throw during parsing custom elements</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">domenic</anchor>著, <time>2016-08-17 15:44:39 +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/00c6fa07bdb9f0d08a28f6c6e1ababca7d08618c">https://github.com/whatwg/html/commit/00c6fa07bdb9f0d08a28f6c6e1ababca7d08618c</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="en">Make document.write etc. throw during parsing custom elements</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">domenic</anchor>著, <time>2016-08-17 15:44:39 +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/00c6fa07bdb9f0d08a28f6c6e1ababca7d08618c">https://github.com/whatwg/html/commit/00c6fa07bdb9f0d08a28f6c6e1ababca7d08618c</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">For users on very slow connections, block document.written scripts · Issue #17 · WICG/interventions</cite>
(<time>2016-10-25 13:13:39 +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/WICG/interventions/issues/17">https://github.com/WICG/interventions/issues/17</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: refactor document.open()/write()/writeln()</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">annevk</anchor>著, <time>2017-05-16 14:12:59 +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/d43b7050b4fe83ebce7724ea005e4707f06a86f7">https://github.com/whatwg/html/commit/d43b7050b4fe83ebce7724ea005e4707f06a86f7</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="108" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[108]</anchor-end> <cite xml:lang="en">Allow not executing scripts inserted by document.write()</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">domenic</anchor>著, <time>2017-07-14 05:37:38 +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/15b258dc74ffe1ba321b81a1c876f129681a97c2">https://github.com/whatwg/html/commit/15b258dc74ffe1ba321b81a1c876f129681a97c2</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="109" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[109]</anchor-end> <cite xml:lang="en">For users on very slow connections, block document.written scripts · Issue #17 · WICG/interventions</cite>
(<time>2017-07-15 23:45: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/WICG/interventions/issues/17">https://github.com/WICG/interventions/issues/17</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="110" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[110]</anchor-end> <cite xml:lang="en">Allow not executing scripts inserted by document.write() by domenic · Pull Request #1400 · whatwg/html</cite>
(<time>2017-07-16 00:03:04 +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/1400">https://github.com/whatwg/html/pull/1400</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="111" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[111]</anchor-end> <cite xml:lang="en">Intervening against document.write()  |  Web  |  Google Developers</cite>
(<time>2017-05-17 04:19:52 +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://developers.google.com/web/updates/2016/08/removing-document-write">https://developers.google.com/web/updates/2016/08/removing-document-write</anchor-external></p><p><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> <cite xml:lang="en">document.open() simplifications, part 2</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">TimothyGu</anchor>著, <time>2018-08-21 03:57: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://github.com/whatwg/html/commit/ae7cf0cc1936c6c309d7279c822dffc3af147851">https://github.com/whatwg/html/commit/ae7cf0cc1936c6c309d7279c822dffc3af147851</anchor-external></p><p><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> <cite xml:lang="en">Remove overridden reload concept</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">TimothyGu</anchor>著, <time>2018-08-18 05:31:49 +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/6440ccae7340ea41d3eb5bf8ff0b3b27363eda85">https://github.com/whatwg/html/commit/6440ccae7340ea41d3eb5bf8ff0b3b27363eda85</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">document.open() simplifications, part 2 by TimothyGu · Pull Request #3946 · whatwg/html</cite>
(<time>2018-09-05 23:39: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://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="75" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[75]</anchor-end> <cite xml:lang="en">Allow document.open()/write() to be called on non-active documents</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">TimothyGu</anchor>著, <time>2018-09-05 05:19:06 +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/ad541d6a5e74f56dccedc56d50750adb65184505">https://github.com/whatwg/html/commit/ad541d6a5e74f56dccedc56d50750adb65184505</anchor-external></p><p><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> <cite xml:lang="en">Extend document.open/write to non-active documents · Issue #2827 · whatwg/html</cite>
(<time>2018-09-29 18:51:34 +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/2827">https://github.com/whatwg/html/issues/2827</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">Allow document.open() to be called on non-active documents by TimothyGu · Pull Request #3977 · whatwg/html</cite>
(<time>2018-09-29 18:54:54 +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/3977">https://github.com/whatwg/html/pull/3977</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="en">Ignore document.open/write after the active parser has been aborted</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">foolip</anchor>著, <time>2019-10-16 17:25: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://github.com/whatwg/html/commit/ead4aa8ec576d7d330a04f7ec8508e336b895fdb">https://github.com/whatwg/html/commit/ead4aa8ec576d7d330a04f7ec8508e336b895fdb</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="115" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[115]</anchor-end> <cite xml:lang="en">Consider adding an &quot;ignore document.open/write&quot; flag on document · Issue #4723 · whatwg/html · GitHub</cite>
(<time>2020-08-31 17:27: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://github.com/whatwg/html/issues/4723">https://github.com/whatwg/html/issues/4723</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="116" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[116]</anchor-end> <cite xml:lang="en">Ignore document.open/write after the active parser has been aborted by foolip · Pull Request #4907 · whatwg/html · GitHub</cite>
(<time>2020-08-31 17:30: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://github.com/whatwg/html/pull/4907">https://github.com/whatwg/html/pull/4907</anchor-external></p></section></section></body></html>