Google digits

Press 1-9 on Google search page to open the corresponding link

2020-03-12 기준 버전입니다. 최신 버전을 확인하세요.

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

You will need to install an extension such as Tampermonkey to install this script.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         Google digits
// @description  Press 1-9 on Google search page to open the corresponding link
// @include      https://www.google.tld/*
// @version      1.1.4
// @author       wOxxOm
// @namespace    wOxxOm.scripts
// @license      MIT License
// @run-at       document-start
// @grant        none
// ==/UserScript==

(document.head || document.documentElement).appendChild(document.createElement('style')).textContent = `
body {
  counter-reset: digitnav;
}
#rso > div > :not([data-ved]) a h3::before {
  counter-increment: digitnav;
  content: counter(digitnav);
  position: absolute;
  margin-left: -1em;
  opacity: .5;
}
`;

window.addEventListener('keydown', function(e) {
  var digit = e.keyCode - 48;
  if (digit >= 1 && digit <= 9 &&
      location.href.match(/[#&?]q=/) &&
      !e.altKey && !e.ctrlKey && !e.shiftKey && !e.metaKey &&
      e.target.localName != 'input') {
    var el = document.querySelectorAll('a h3')[digit - 1];
    var link = el && el.closest('a');
    if (link) {
      el.style.backgroundColor = 'yellow';
      location.href = link.href;
      e.preventDefault();
      e.stopPropagation();
      e.stopImmediatePropagation();
    }
  }
}, true);