← Todos los ejemplos

JavaScript Productividad news.ycombinator.com

Hacker News: navegación con teclas j/k

Permite moverse entre comentarios e historias con las teclas j y k, resaltando el elemento actual.

Código para copiar

// Navigate between comments with the j and k keys
(function () {
  const items = Array.prototype.slice.call(
    document.querySelectorAll('.comtr, .athing')
  );
  if (!items.length) { return; }
  let idx = -1;
  function focus(n) {
    if (n < 0 || n >= items.length) { return; }
    idx = n;
    const el = items[idx];
    el.scrollIntoView({ block: 'center', behavior: 'smooth' });
    items.forEach(function (i) { i.style.outline = ''; });
    el.style.outline = '2px solid #ff6600';
  }
  document.addEventListener('keydown', function (e) {
    const t = e.target.tagName;
    if (t === 'INPUT' || t === 'TEXTAREA') { return; }
    if (e.key === 'j') { focus(idx + 1); }
    else if (e.key === 'k') { focus(idx - 1); }
  });
})();

Cómo usar este ejemplo

  1. Copia el código con el botón de arriba.
  2. Instala JustZix (2 minutos) y abre la extensión en la página de destino.
  3. Añade una nueva regla que coincida con esa página.
  4. Pega el código en el panel JavaScript de la regla y guarda — se ejecuta en cada visita a la página.

Valora este ejemplo

Sin valoraciones — sé el primero.

¿Funciona este ejemplo?

Los snippets son inútiles sin un lugar donde pegarlos.

JustZix se instala en 2 minutos y ejecuta tu código en cada página coincidente. Sin cuenta, sin pago.

Descargar gratis Ver casos de uso