Skip to content

Commit

Permalink
Rearrange and improve domintro
Browse files Browse the repository at this point in the history
  • Loading branch information
domenic committed Mar 29, 2024
1 parent 8f872b7 commit 1619131
Showing 1 changed file with 67 additions and 47 deletions.
114 changes: 67 additions & 47 deletions source
Original file line number Diff line number Diff line change
Expand Up @@ -112244,10 +112244,22 @@ document.body.appendChild(frame)</code></pre>
</div>


<!-- We anticipate adding XMLSerializer here in the future, thus the id="". When we do that, add
<h4 id="domparser">Parsing HTML or XML documents</h4> below this. outerHTML/innerHTML might
also live here? -->
<h3 id="dom-parsing-and-serialization">DOM parsing and serialization</h3>
<h3 id="dom-parsing-and-serialization">DOM parsing and serialization APIs</h3>

<pre><code class="idl">partial interface <span id="Element-partial">Element</span> {
[<span>CEReactions</span>] undefined <span data-x="dom-Element-setHTMLUnsafe">setHTMLUnsafe</span>(<span data-x="tt-htmlstring">HTMLString</span> html);
DOMString <span data-x="dom-Element-getHTML">getHTML</span>(optional <span>GetHTMLOptions</span> options = {});
};

partial interface <span id="ShadowRoot-partial">ShadowRoot</span> {
[<span>CEReactions</span>] undefined <span data-x="dom-ShadowRoot-setHTMLUnsafe">setHTMLUnsafe</span>(<span data-x="tt-htmlstring">HTMLString</span> html);
DOMString <span data-x="dom-ShadowRoot-getHTML">getHTML</span>(optional <span>GetHTMLOptions</span> options = {});
};

dictionary <dfn dictionary>GetHTMLOptions</dfn> {
boolean <dfn dict-member for="GetHTMLOptions" data-x="dom-GetHTMLOptions-serializableShadowRoots">serializableShadowRoots</dfn> = false;
sequence&lt;ShadowRoot> <dfn dict-member for="GetHTMLOptions" data-x="dom-GetHTMLOptions-shadowRoots">shadowRoots</dfn> = [];
};</code></pre>

<h4>The <code>DOMParser</code> interface</h4>

Expand Down Expand Up @@ -112439,21 +112451,6 @@ enum <dfn enum>DOMParserSupportedType</dfn> {
<p class="warning">These methods perform no sanitization to remove potentially-dangerous elements
and attributes like <code>script</code> or <span>event handler content attributes</span>.</p>

<pre><code class="idl">partial interface <span id="Element-partial">Element</span> {
[<span>CEReactions</span>] undefined <span data-x="dom-Element-setHTMLUnsafe">setHTMLUnsafe</span>(<span data-x="tt-htmlstring">HTMLString</span> html);
DOMString <span data-x="dom-Element-getHTML">getHTML</span>(optional <span>GetHTMLOptions</span> options = {});
};

partial interface <span id="ShadowRoot-partial">ShadowRoot</span> {
[<span>CEReactions</span>] undefined <span data-x="dom-ShadowRoot-setHTMLUnsafe">setHTMLUnsafe</span>(<span data-x="tt-htmlstring">HTMLString</span> html);
DOMString <span data-x="dom-ShadowRoot-getHTML">getHTML</span>(optional <span>GetHTMLOptions</span> options = {});
};

dictionary <dfn dictionary>GetHTMLOptions</dfn> {
boolean <dfn dict-member for="GetHTMLOptions" data-x="dom-GetHTMLOptions-serializableShadowRoots">serializableShadowRoots</dfn> = false;
sequence&lt;ShadowRoot> <dfn dict-member for="GetHTMLOptions" data-x="dom-GetHTMLOptions-shadowRoots">shadowRoots</dfn> = [];
};</code></pre>

<div w-nodev>

<p><code>Element</code>'s <dfn method for="Element"><code
Expand Down Expand Up @@ -112519,6 +112516,57 @@ dictionary <dfn dictionary>GetHTMLOptions</dfn> {

</div>

<h4>HTML serialization methods</h4>

<dl class="domintro">
<dt><code data-x=""><var>html</var> = <var>element</var>.<span subdfn data-x="dom-Element-getHTML">getHTML</span>()</code></dt>
<dd>
<p>Returns the result of serializing <var>element</var> to HTML. <span data-x="shadow root">Shadow roots</span> within <var>element</var> are not serialized.</p>
</dd>

<dt><code data-x=""><var>html</var> = <var>element</var>.<span data-x="dom-Element-getHTML">getHTML</span>({ <span data-x="dom-GetHTMLOptions-serializableShadowRoots">serializableShadowRoots</span>: true })</code></dt>
<dd>
<p>Returns the result of serializing <var>element</var> to HTML. <span data-x="shadow root">Shadow roots</span> within <var>element</var> are serialized if they are marked as <span data-x="shadow-serializable">serializable</span>.</p>
</dd>

<dt><code data-x=""><var>html</var> = <var>element</var>.<span data-x="dom-Element-getHTML">getHTML</span>({ <span data-x="dom-GetHTMLOptions-shadowRoots">shadowRoots</span> })</code></dt>
<dd>
<p>Returns the result of serializing <var>element</var> to HTML. <span data-x="shadow root">Shadow roots</span> within <var>element</var> are serialized if they are marked as <span data-x="shadow-serializable">serializable</span>, or if they are in the <code data-x="dom-GetHTMLOptions-shadowRoots">shadowRoots</code> array.</p>
</dd>

<dt><code data-x=""><var>html</var> = <var>shadowRoot</var>.<span subdfn data-x="dom-ShadowRoot-getHTML">getHTML</span>()</code></dt>
<dd>
<p>Returns the result of serializing <var>shadowRoot</var> to HTML, using its <span data-x="concept-DocumentFragment-host">shadow host</span> as the context element. <span data-x="shadow root">Shadow roots</span> within <var>shadowRoot</var> are not serialized.</p>
</dd>

<dt><code data-x=""><var>html</var> = <var>shadowRoot</var>.<span data-x="dom-Element-getHTML">getHTML</span>({ <span data-x="dom-GetHTMLOptions-serializableShadowRoots">serializableShadowRoots</span>: true })</code></dt>
<dd>
<p>Returns the result of serializing <var>shadowRoot</var> to HTML, using its <span data-x="concept-DocumentFragment-host">shadow host</span> as the context element. <span data-x="shadow root">Shadow roots</span> within <var>shadowRoot</var> are serialized if they are marked as <span data-x="shadow-serializable">serializable</span>.</p>
</dd>

<dt><code data-x=""><var>html</var> = <var>shadowRoot</var>.<span data-x="dom-Element-getHTML">getHTML</span>({ <span data-x="dom-GetHTMLOptions-shadowRoots">shadowRoots</span> })</code></dt>
<dd>
<p>Returns the result of serializing <var>shadowRoot</var> to HTML, using its <span data-x="concept-DocumentFragment-host">shadow host</span> as the context element. <span data-x="shadow root">Shadow roots</span> within <var>shadowRoot</var> are serialized if they are marked as <span data-x="shadow-serializable">serializable</span>, or if they are in the <code data-x="dom-GetHTMLOptions-shadowRoots">shadowRoots</code> array.</p>
</dd>
</dl>

<div w-nodev>

<p><code>Element</code>'s <dfn method for="Element"><code
data-x="dom-Element-getHTML">getHTML(<var>options</var>)</code></dfn> method steps
are to return the result of <span>HTML fragment serialization algorithm</span> with
<span>this</span>, <var>options</var>["<code
data-x="dom-GetHTMLOptions-serializableShadowRoots">serializableShadowRoots</code>"],
and <var>options</var>["<code data-x="dom-GetHTMLOptions-shadowRoots">shadowRoots</code>"].</p>

<p><code>ShadowRoot</code>'s <dfn method for="ShadowRoot"><code
data-x="dom-ShadowRoot-getHTML">getHTML(<var>options</var>)</code></dfn> method steps
are to return the result of <span>HTML fragment serialization algorithm</span> with
<span>this</span>, <var>options</var>["<code
data-x="dom-GetHTMLOptions-serializableShadowRoots">serializableShadowRoots</code>"],
and <var>options</var>["<code data-x="dom-GetHTMLOptions-shadowRoots">shadowRoots</code>"].</p>

</div>

<h3 split-filename="timers-and-user-prompts" id="timers">Timers</h3>

Expand Down Expand Up @@ -131036,34 +131084,6 @@ document.body.appendChild(text);
element type is one of the <span>void elements</span>, or is <code>basefont</code>,
<code>bgsound</code>, <code>frame</code>, <code>keygen</code>, or <code>param</code>.</p>

<dl class="domintro">
<dt><code data-x=""><var>element</var>.<span subdfn
data-x="dom-Element-getHTML">getHTML</span>(<var>options</var>)</code></dt>
<dd>
<p>Serializes <var>element</var> to HTML and returns the result.</p>
</dd>

<dt><code data-x=""><var>shadowRoot</var>.<span subdfn
data-x="dom-ShadowRoot-getHTML">getHTML</span>(<var>options</var>)</code></dt>
<dd>
<p>Serializes <var>shadowRoot</var> to HTML and returns the result.</p>
</dd>
</dl>

<p><code>Element</code>'s <dfn method for="Element"><code
data-x="dom-Element-getHTML">getHTML(<var>options</var>)</code></dfn> method steps
are to return the result of <span>HTML fragment serialization algorithm</span> with
<span>this</span>, <var>options</var>["<code
data-x="dom-GetHTMLOptions-serializableShadowRoots">serializableShadowRoots</code>"],
and <var>options</var>["<code data-x="dom-GetHTMLOptions-shadowRoots">shadowRoots</code>"].</p>

<p><code>ShadowRoot</code>'s <dfn method for="ShadowRoot"><code
data-x="dom-ShadowRoot-getHTML">getHTML(<var>options</var>)</code></dfn> method steps
are to return the result of <span>HTML fragment serialization algorithm</span> with
<span>this</span>, <var>options</var>["<code
data-x="dom-GetHTMLOptions-serializableShadowRoots">serializableShadowRoots</code>"],
and <var>options</var>["<code data-x="dom-GetHTMLOptions-shadowRoots">shadowRoots</code>"].</p>

<p>The following steps form the <!--en-GB--><dfn id="html-fragment-serialisation-algorithm"
export>HTML fragment serialization algorithm</dfn>. The algorithm takes as input a DOM
<code>Element</code>, <code>Document</code>, or <code>DocumentFragment</code> referred to as
Expand Down

0 comments on commit 1619131

Please sign in to comment.