v153 · navigation · feature removal

Auditing your own targets

A removal is only interesting if you can find out whether it touches you. Paste your markup in and this page classifies every target in it against the four keywords and the frame names the same document declares — the check you would otherwise write a grep for and get wrong on the case-insensitive ones.

Audit some markup

Nothing audited yet.
Every target attribute in the document
elementtargetverdictwhat happens, and what to write instead
Press Audit.
Frame names declared in the same document
namedeclared by
Press Audit.

Does an underscore name resolve at all?

The advice below rests on one thing: that after the keyword is removed, _current becomes an ordinary name and resolves like any other. That is not something a page on Chrome 150 can test with _current itself — the keyword is still there. It can be tested with a different underscore-prefixed name that no engine special-cases, and the answer transfers.

Not run yet.
iframe name="_notakeyword"
source frame

the rewrite

There is one honest fix and it is a character shorter than the thing it replaces.

<!-- before: works in Chrome, means something else everywhere -->
<a href="/next" target="_current">Next</a>

<!-- after: means "this frame", in every engine, and always has -->
<a href="/next" target="_self">Next</a>

<!-- or, if you meant nothing in particular, omit it entirely -->
<a href="/next">Next</a>

The same applies to window.open(url, "_current") and to <form target="_current">: the value is a browsing-context name in all three positions, and it is the same lookup in all three.