Skip to content

Commit 8abe559

Browse files
authored
Fire a load event for javascript: URL non-strings
Fixes #1895.
1 parent 1df3282 commit 8abe559

File tree

1 file changed

+25
-12
lines changed

1 file changed

+25
-12
lines changed

source

Lines changed: 25 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -33673,8 +33673,8 @@ interface <dfn interface>HTMLIFrameElement</dfn> : <span>HTMLElement</span> {
3367333673

3367433674
<p>To <dfn>navigate an <code>iframe</code> or <code>frame</code></dfn> given an element
3367533675
<var>element</var>, a <span>URL</span> <var>url</var>, a <span>referrer policy</span>
33676-
<var>referrerPolicy</var>, and an optional string-or-null <var>srcdocString</var> (default
33677-
null):</p>
33676+
<var>referrerPolicy</var>, an optional string-or-null <var>srcdocString</var> (default
33677+
null), and an optional boolean <var>initalInsertion</var> (default false):</p>
3367833678

3367933679
<ol>
3368033680
<li><p>Let <var>historyHandling</var> be "<code
@@ -33693,8 +33693,9 @@ interface <dfn interface>HTMLIFrameElement</dfn> : <span>HTMLElement</span> {
3369333693
<li><p><span>Navigate</span><!--DONAV iframe or frame--> <var>element</var>'s <span>content
3369433694
navigable</span> to <var>url</var> using <var>element</var>'s <span>node document</span>, with
3369533695
<i data-x="navigation-hh">historyHandling</i> set to <var>historyHandling</var>, <i
33696-
data-x="navigation-referrer-policy">referrerPolicy</i> set to <var>referrerPolicy</var>, and <i
33697-
data-x="navigation-resource">documentResource</i> set to <var>srcdocString</var>.</p></li>
33696+
data-x="navigation-referrer-policy">referrerPolicy</i> set to <var>referrerPolicy</var>, <i
33697+
data-x="navigation-resource">documentResource</i> set to <var>srcdocString</var>, and <i
33698+
data-x="navigation-initial-insertion">initialInsertion</i> set to <var>initialInsertion</var>.</p></li>
3369833699
</ol>
3369933700

3370033701
<p>Each <code>Document</code> has an <dfn>iframe load in progress</dfn> flag and a <dfn>mute
@@ -101409,8 +101410,11 @@ location.href = '#foo';</code></pre>
101409101410
policy</span> <dfn data-x="navigation-referrer-policy"><var>referrerPolicy</var></dfn> (default
101410101411
the empty string), an optional <span>user navigation involvement</span> <dfn
101411101412
data-x="navigation-user-involvement"><var>userInvolvement</var></dfn> (default "<code
101412-
data-x="uni-none">none</code>"), and an optional <code>Element</code> <dfn
101413-
data-x="navigation-source-element"><var>sourceElement</var></dfn> (default null):</p>
101413+
data-x="uni-none">none</code>"), an optional <code>Element</code> <dfn
101414+
data-x="navigation-source-element"><var>sourceElement</var></dfn> (default null), and an
101415+
optional boolean <dfn for="navigate"
101416+
data-x="navigation-initial-insertion"><var>initialInsertion</var></dfn> (default
101417+
false):</p>
101414101418

101415101419
<ol>
101416101420
<li><p>Let <var>cspNavigationType</var> be "<code data-x="">form-submission</code>" if
@@ -101586,8 +101590,8 @@ location.href = '#foo';</code></pre>
101586101590
source</span> given <var>navigable</var>'s <span data-x="nav-window">active window</span> to
101587101591
<span>navigate to a <code>javascript:</code> URL</span> given <var>navigable</var>,
101588101592
<var>url</var>, <var>historyHandling</var>, <var>sourceSnapshotParams</var>,
101589-
<var>initiatorOriginSnapshot</var>, <var>userInvolvement</var>, and
101590-
<var>cspNavigationType</var>.</p></li>
101593+
<var>initiatorOriginSnapshot</var>, <var>userInvolvement</var>,
101594+
<var>cspNavigationType</var>, and <var>initialInsertion</var>.</p></li>
101591101595

101592101596
<li><p>Return.</p></li>
101593101597
</ol>
@@ -101963,8 +101967,8 @@ location.href = '#foo';</code></pre>
101963101967
<var>targetNavigable</var>, a <span>URL</span> <var>url</var>, a <span>history handling
101964101968
behavior</span> <var>historyHandling</var>, a <span>source snapshot params</span>
101965101969
<var>sourceSnapshotParams</var>, an <span>origin</span> <var>initiatorOrigin</var>, a <span>user
101966-
navigation involvement</span> <var>userInvolvement</var>, and a string
101967-
<var>cspNavigationType</var>:</p>
101970+
navigation involvement</span> <var>userInvolvement</var>, a string
101971+
<var>cspNavigationType</var>, and a boolean <var>initialInsertion</var>:</p>
101968101972

101969101973
<ol>
101970101974
<li><p><span>Assert</span>: <var>historyHandling</var> is "<code
@@ -101996,7 +102000,16 @@ location.href = '#foo';</code></pre>
101996102000
<var>url</var>, <var>initiatorOrigin</var>, and <var>userInvolvement</var>.</p></li>
101997102001

101998102002
<li>
101999-
<p>If <var>newDocument</var> is null, then return.</p>
102003+
<p>If <var>newDocument</var> is null:</p>
102004+
102005+
<ol>
102006+
<li><p>If <var>initialInsertion</var> is true and <var>targetNavigable</var>'s <span
102007+
data-x="nav-document">active document</span>'s <span>is initial
102008+
<code>about:blank</code></span> is true, then run the <span>iframe load event steps</span>
102009+
given <var>targetNavigable</var>'s <span data-x="nav-container">container</span>.</p></li>
102010+
102011+
<li><p>Return.</p></li>
102012+
</ol>
102000102013

102001102014
<p class="note">In this case, some JavaScript code was executed, but no new
102002102015
<code>Document</code> was created, so we will not perform a navigation.</p>
@@ -140422,7 +140435,7 @@ interface <dfn interface>HTMLFrameSetElement</dfn> : <span>HTMLElement</span> {
140422140435
</li>
140423140436

140424140437
<li><p><span>Navigate an <code>iframe</code> or <code>frame</code></span> given
140425-
<var>element</var>, <var>url</var>, and the empty string.</p></li>
140438+
<var>element</var>, <var>url</var>, the empty string, and <var>initialInsertion</var>.</p></li>
140426140439
</ol>
140427140440

140428140441
<p>The <code>frame</code> element <span>potentially delays the load event</span>.</p>

0 commit comments

Comments
 (0)