Google: keyboard navigation for results
Lets you move through results with the J and K keys and open the highlighted result with Enter.
Code to copy
// Navigate organic results with J / K keys and open with Enter
let jzIdx = -1;
function jzResults() {
return Array.from(document.querySelectorAll('#search a > h3'))
.map(function (h) { return h.closest('a'); });
}
function jzFocus(n) {
const r = jzResults();
if (!r.length) { return; }
jzIdx = (n + r.length) % r.length;
const el = r[jzIdx];
el.style.outline = '2px solid #1a73e8';
el.scrollIntoView({ block: 'center' });
el.focus();
r.forEach(function (a, i) {
if (i !== jzIdx) { a.style.outline = ''; }
});
}
document.addEventListener('keydown', function (e) {
if (/INPUT|TEXTAREA/.test(document.activeElement.tagName)) { return; }
if (e.key === 'j') { jzFocus(jzIdx + 1); }
else if (e.key === 'k') { jzFocus(jzIdx - 1); }
else if (e.key === 'Enter' && jzIdx >= 0) { jzResults()[jzIdx].click(); }
});
How to use this example
- Copy the code with the button above.
- Install JustZix (2 minutes) and open the extension on the target page.
- Add a new rule matching that page.
- Paste the code into the rule's JavaScript panel and save — it runs on every page visit.
Rate this example
No ratings yet — be the first.