Jump to content

MediaWiki:Gadget-removeAccessKeys.js

From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
// **********************************************************************
// **                 ***WARNING GLOBAL GADGET FILE***                 **
// **             changes to this file affect many users.              **
// **           please discuss on the talk page before editing         **
// **                                                                  **
// **********************************************************************
// Imported from version as of: 2007-04-17T22:22:27
// Deactivating access keys, see [[Wikipedia talk:WikiProject User scripts/Scripts/removeAccessKeys|talk page]]
jQuery(document).ready(function($) {
    if (mw.config.get('skin') == 'vector') {
        var head = document.getElementById('mw-head');
        if (head) removeKeys(head.getElementsByTagName('a'));
        var panel = document.getElementById('mw-panel');
        if (panel) removeKeys(panel.getElementsByTagName('a'));
    } else {
        var columnOne = document.getElementById('column-one');
        if (!columnOne) columnOne = document.getElementById('mw_portlets');
        if (!columnOne) return;
        removeKeys(columnOne.getElementsByTagName('a'));
        var cactions = document.getElementById('p-cactions');
        if (cactions) removeKeys(cactions.getElementsByTagName('a'));
        var personal = document.getElementById('p-personal');
        if (personal) removeKeys(personal.getElementsByTagName('a'));
    }
    removeKeys(document.getElementsByTagName('input'));
    removeKeys(document.getElementsByTagName('label'));
});

function removeKeys(nodeList) {
    var el;
    for (var i = 0; i < nodeList.length; i++) {
        el = nodeList[i];
        if (!el.accessKey) continue;
        if (!window.removeAccessKeys || removeAccessKeys.indexOf(el.accessKey) >= 0) {
            el.accessKey = ''; // el.setAttribute('accessKey', ''); 
            $(el).updateTooltipAccessKeys();
        }
    }
}