← Todos los ejemplos

JavaScript Productividad mastodon.social

Mastodon: abrir enlaces externos en nueva pestaña

Hace que los enlaces externos en los posts se abran en una nueva pestaña, conservando la línea.

Código para copiar

// Force external links in posts to open in a new browser tab
(function () {
  function patch() {
    document.querySelectorAll('.status__content a[href^="http"], .detailed-status__content a[href^="http"]').forEach(function (a) {
      if (a.dataset.jzNewtab) { return; }
      var url;
      try { url = new URL(a.href); } catch (e) { return; }
      if (url.host === location.host) { return; }
      a.dataset.jzNewtab = '1';
      a.target = '_blank';
      a.rel = 'noopener noreferrer';
    });
  }
  patch();
  var obs = new MutationObserver(patch);
  obs.observe(document.body, { 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