Bugzilla – Bug 171
Introduce <object name> and <iframe name> to allow <a target> to load stuff in them.
Last modified: 2008-04-21 23:01:00 CEST
Index: source =================================================================== --- source (revision 1469) +++ source (revision 1470) @@ -5735,8 +5735,8 @@ <p>The <dfn title="attr-base-target"><code>target</code></dfn> attribute, if specified, must contain a <span>valid browsing context - name</span>. User agents use this name when <span>following - hyperlinks</span>.</p> + name or keyword</span>. User agents use this name when + <span>following hyperlinks</span>.</p> <p>A <code>base</code> element, if it has a <code title="attr-base-target">target</code> attribute, must come before @@ -11629,10 +11629,12 @@ <dd>Text that conforms to the requirements given in the prose.</dd> <dt>Element-specific attributes:</dt> <dd><code title="attr-iframe-src">src</code></dd> + <dd><code title="attr-iframe-name">name</code></dd> <dt>DOM interface:</dt> <dd> <pre class="idl">interface <dfn>HTMLIFrameElement</dfn> : <span>HTMLElement</span> { - attribute DOMString <span title="dom-iframe-src">src</span>;<!-- + attribute DOMString <span title="dom-iframe-src">src</span>; + attribute DOMString <span title="dom-iframe-name">name</span>;<!-- readonly attribute Document <span title="dom-iframe-contentDocument">contentDocument</span>; readonly attribute <span>Window</span> <span title="dom-iframe-contentWindow">contentWindow</span>;--> };</pre> @@ -11665,6 +11667,19 @@ set when the element is created, the browsing context will remain at the initial <code>about:blank</code><!-- XXX xref --> page.</p> + <p>The <dfn title="attr-iframe-name"><code>name</code></dfn> + attribute, if present, must be a <span>valid browsing context + name</span>. When the browsing context is created, if the attribute + is present, the <span>browsing context name</span> must be set to + the value of this attribute; otherwise, the <span>browsing context + name</span> must be set to the empty string.</p> + + <p>Whenever the <code title="attr-iframe-name">name</code> attribute + is set, the nested <span>browsing context</span>'s <span + title="browsing context name">name</span> must be changed to the new + value. If the attribute is removed, the <span>browsing context + name</span> must be set to the empty string.</p> + <p>When content loads in an <code>iframe</code>, after any <code title="event-load">load</code> events are fired within the content itself, the user agent must <span>fire a <code @@ -11890,6 +11905,10 @@ <code title="attr-object-type">type</code> attributes must be present.</p> + <p>The <dfn title="attr-object-name"><code>name</code></dfn> + attribute, if present, must be a <span>valid browsing context + name</span>.</p> + <p>Whenever the <code title="attr-object-data">data</code> attribute changes, or, if the <code title="attr-object-data">data</code> attribute is not present, whenever the <code @@ -12016,6 +12035,11 @@ browsing context gets further navigated to other locations.)</p> + <p>If the <code title="attr-object-name">name</code> attribute + is present, the <span>browsing context name</span> must be set + to the value of this attribute; otherwise, the <span>browsing + context name</span> must be set to the empty string.</p> + <p class="big-issue">navigation might end up treating it as something else, because it can do sniffing. how should we handle that?</p> @@ -12073,10 +12097,10 @@ <span>browsing context</span>. If no suitable handler can be found, jump to the next step (fallback).</p></li> - <li><p>(Fallback.) The <code>object</code> element doesn't - represent anything except what the element's contents represent, - ignoring any leading <code>param</code> element children. This is - the element's <span>fallback content</span>.</li> + <li><p>(Fallback.) The <code>object</code> element represents what + the element's contents represent, ignoring any leading + <code>param</code> element children. This is the element's + <span>fallback content</span>.</li> </ol> @@ -12090,6 +12114,14 @@ different capabilities, with the user agent picking the best one it supports.</p> + <p>Whenever the <code title="attr-object-name">name</code> attribute + is set, if the <code>object</code> element has a nested + <span>browsing context</span>, its <span title="browsing context + name">name</span> must be changed to the new value. If the attribute + is removed, if the <code>object</code> element has a <span>browsing + context</span>, the <span>browsing context name</span> must be set + to the empty string.</p> + <p>The <code title="attr-hyperlink-usemap">usemap</code> attribute, if present while the <code>object</code> element represents an image, can indicate that the object has an associated <span>image @@ -24096,12 +24128,16 @@ <p>Browsing contexts can have a <dfn>browsing context name</dfn>. By default, a browsing context has no name (its name is not set).</p> - <p>A <dfn>valid browsing context name</dfn> is any string that does - not start with a U+005F LOW LINE character, or, a string that + <p>A <dfn>valid browsing context name</dfn> is any string with at + least one character that does not start with a U+005F LOW LINE + character. (Names starting with an underscore are reserved for + special keywords.)</p> + + <p>A <dfn>valid browsing context name or keyword</dfn> is any string + that is either a <span>valid browsing context name</span> or that case-insensitively <!-- ASCII --> matches one of: <!--<code title="">_blank</code>,--> <code title="">_self</code>, <code - title="">_parent</code>, or <code title="">_top</code>. (Names - starting with an underscore are reserved for special keywords.)</p> + title="">_parent</code>, or <code title="">_top</code>.</p> <p><dfn>The rules for chosing a browsing context given a browsing context name</dfn> are as follows. The rules assume that they are @@ -24401,9 +24437,9 @@ <p>The second argument, <var title="">target</var>, specifies the <span title="browsing context name">name</span> of the browsing context that is to be navigated. It must be a <span>valid browsing - context name</span>. If fewer than two arguments are provided, then - the <var title="">name</var> argument defaults to the value - "<code>_blank</code>".</p> + context name or keyword</span>. If fewer than two arguments are + provided, then the <var title="">name</var> argument defaults to the + value "<code>_blank</code>".</p> <p>The third argument, <var title="">features</var>, has no effect and is supported for historical reasons only.</p> @@ -30252,8 +30288,8 @@ </div> <p>The <dfn title="attr-hyperlink-target"><code>target</code></dfn> - attribute, if present, must be a <span>valid browsing context - name</span>. User agents use this name when <span>following + attribute, if present, must be a <span>valid browsing context name + or keyword</span>. User agents use this name when <span>following hyperlinks</span>.</p> <p>The <dfn id="ping"