미디어위키:Gadget-removeAccessKeys.js

위키백과, 우리 모두의 백과사전.

참고: 설정을 저장한 후에 바뀐 점을 확인하기 위해서는 브라우저의 캐시를 새로 고쳐야 합니다. 구글 크롬, 파이어폭스, 마이크로소프트 엣지, 사파리: ⇧ Shift 키를 누른 채 "새로 고침" 버튼을 클릭하십시오. 더 자세한 정보를 보려면 위키백과:캐시 무시하기 항목을 참고하십시오.

jQuery( document ).ready( function( $ ) {
 if (mw.config.get('skin') == 'vector' || mw.config.get('skin') == 'vector-2022') {
  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();
    }
  }
}