due chiacchiere

Aprire i link esterni in una nuova finestra

Quando ho riscritto il tema del mio blog da zero, qualche mese fa, mi ero dimenticato di quest’interessante discussione avuta con i miei lettori, in cui chiedevo un parere su come comportarmi per i collegamenti presenti nei vari post. Di acqua sotto i ponti da allora ne è passata un bel po’, ed oggi l’approccio che molti suggerivano, ovvero di aprire i link esterni in una nuova finestra, è diventato molto comune anche nei siti istituzionali. Così dopo una breve chiacchierata con l’omino talebano dell’accessibilità che siede sulla mia spalla, ho deciso di implementare questa funzione Javascript. Direi che è un buon segno il fatto che finora nessuno si è lamentato (o accorto) della novità.

document.querySelectorAll( 'a' ).forEach( link => {
  if ( link.getAttribute( 'href' ) &&
       link.hostname !== location.hostname ) {
    link.target = '_blank';
  }
});

Commenti

  1. ha scritto:

    io lo faccio, da sempre, a manina quando inserisco un link…

    Risposte al commento di kOoLiNuS

    1. camu
      ha scritto:

      Non me ne ero accorto. Sul blog dici? Non lo vedo nell’ultimo post con i link consigliati…

      Risposte al commento di camu

      1. ha scritto:

        intendo negli articoli normali… i post della mia categoria linklog sono scritti in markdown ed – effettivamente – potrei copiare la tua soluzione per ovviare al problema 😉

        Risposte al commento di kOoLiNuS
        1. camu
          ha scritto:

          Ecco, ora mi torna…

  2. ha scritto:

    Bravo, soluzione elegante, mi piace.
    Ciao,
    Emanuele

    Risposte al commento di Emanuele

    1. camu
      ha scritto:

      Grazie! Volevo evitare una soluzione manuale, anche perché poi mi sarebbe toccato modificare i link esterni nei commenti ogni volta.

  3. Paolo
    ha scritto:

    Dovresti aggiungere anche l’attributo `rel` già che ci sei. Vedi qui.

    Risposte al commento di Paolo

    1. camu
      ha scritto:

      Ma pensa, se le inventano proprio tutte. Una tecnica simile l’ho vista usare in siti che offrono sconti e coupon vari: quando clicchi sul pulsante per svelare il codice sconto, si apre una nuova tab con il sito dove fare l’acquisto, ma il focus rimane sulla tab dov’è il pulsante (forse non so spiegarlo bene). Davvero subdolo, grazie per la segnalazione, provvedo quanto prima ad aggiungere quell’attributo.

Rispondi a Paolo

Torna in cima alla pagina