← Todos los ejemplos

JavaScript Lectura y enfoque ebay.com

eBay: resaltar las palabras buscadas en los resultados

Resalta en amarillo tus palabras buscadas en los títulos de anuncios para localizar las coincidencias exactas.

Código para copiar

// Highlight the searched keywords inside result titles
function highlightKeywords() {
  const term = new URL(window.location.href).searchParams.get('_nkw');
  if (!term) { return; }
  const words = term.toLowerCase().split(/\s+/).filter(function (w) { return w.length > 2; });
  if (!words.length) { return; }
  document.querySelectorAll('.srp-results .s-item__title:not([data-jz-hl])').forEach(function (el) {
    el.setAttribute('data-jz-hl', '1');
    let html = el.innerHTML;
    words.forEach(function (w) {
      const re = new RegExp('(' + w.replace(/[.*+?^${}()|[\]\\]/g, '\\$&') + ')', 'gi');
      html = html.replace(re, '<mark style="background:#fff176">$1</mark>');
    });
    el.innerHTML = html;
  });
}
highlightKeywords();
const obs = new MutationObserver(highlightKeywords);
obs.observe(document.documentElement, { childList: true, subtree: true });

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