Remove use of 'jquery.tabIndex'

This feature was copied from Vector where it was recently removed
in e5c837e3ebf8.

In a nut shell, HTML output from PHP generally either has no
tabindex, tabindex=0 or tabindex=-1, or sometimes numbers between
1-100 for custom tab ordering. In JavaScript we then used
lastTabIndex (returns highest+1) to get an input field to be at the
end of the tab order. Thus making it be the *first* thing that
gets focussed when pressing Tab on a page (I guess the browser
offset is at the end of the document by default?)

This JS-based approach wasn't very stable as it required only
other thing in JS to use it for other reasons (e.g. genuinely
minting normal-use tab indexes for something) to break it as
we can't use the same logic for both "the lowest next number"
and "the highest possible number".

If we want to preserve this feature, it should probably do
something like attr('tabindex', '99999') which, while ugly,
would be a more sustainable way to implement this this.

Per Jack Phoenix in code review on this patch, match Vector
behaviour for now, where it was removed per T226148 for
being contrary to accessibility best practies.

Bug: T234581
Change-Id: I24777bdb6655f21d2f4896d5f887a125b36ab584
isekai
Timo Tijhof 5 years ago
parent 100e1b2409
commit a907ac43b9

@ -3,11 +3,6 @@ $( function () {
// other resolutions regardless and the css overrides any visible effects. // other resolutions regardless and the css overrides any visible effects.
var $dropdowns = $( '#personal, #p-variants-desktop, .sidebar-chunk' ); var $dropdowns = $( '#personal, #p-variants-desktop, .sidebar-chunk' );
/**
* Focus on search box when 'Tab' key is pressed once
*/
$( '#searchInput' ).attr( 'tabindex', $( document ).lastTabIndex() + 1 );
/** /**
* Desktop menu click-toggling * Desktop menu click-toggling
* *

@ -63,9 +63,6 @@
"targets": [ "desktop" ], "targets": [ "desktop" ],
"scripts": [ "scripts": [
"resources/main.js" "resources/main.js"
],
"dependencies": [
"jquery.tabIndex"
] ]
}, },
"skins.timeless.mobile": { "skins.timeless.mobile": {

Loading…
Cancel
Save