← Todos los ejemplos

JavaScript Privacidad news.ycombinator.com

Hacker News: copiar un enlace limpio

Añade a cada historia un botón que copia la dirección sin parámetros de seguimiento, lista para compartir.

Código para copiar

// Add a button to copy each story link with tracking params stripped
(function () {
  document.querySelectorAll('.titleline > a:first-child').forEach(function (a) {
    if (a.parentNode.querySelector('.jz-copy-clean')) { return; }
    const btn = document.createElement('a');
    btn.className = 'jz-copy-clean';
    btn.textContent = ' [copy clean]';
    btn.href = 'javascript:void(0)';
    btn.style.cssText = 'color:#ff6600;font-size:8pt;margin-left:6px;cursor:pointer;';
    btn.addEventListener('click', function () {
      try {
        const u = new URL(a.href);
        ['utm_source','utm_medium','utm_campaign','utm_term','utm_content',
         'fbclid','gclid','ref','ref_src'].forEach(function (p) {
          u.searchParams.delete(p);
        });
        navigator.clipboard.writeText(u.toString());
        btn.textContent = ' [copied]';
        setTimeout(function () { btn.textContent = ' [copy clean]'; }, 1500);
      } catch (e) {}
    });
    a.parentNode.appendChild(btn);
  });
})();

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