un target=’_blank’ automatique en jquery pour respecter les normes XHTML strictes

La W3C n’accepte pas que les pages utilisent l’attribut target= »_blank » sur un lien.

Pourquoi ? Parce qu’il pense que le choix d’ouvrir ou non une nouvelle fenêtre appartient à l’internaute et non au créateur de la page.

C’est bien le respect de l’internaute, mais parfois pour des raisons marketing ou autres, on veut absolument qu’un nouvelle page s’ouvre mais tout en respectant les normes W3C.

Voici donc une méthode simple et efficace grâce à JQuery:

$(document).ready(function() {
    $("a[href^='http://']").click(function(){
      if(($(this).attr("class"))=='internal'){
        return true;
      }
      window.open(this.href);
      return false;
    });
});

Un lien simple :

<a href="http://www.exemple.com">lien</a>

s’ouvrira automatiquement dans une nouvelle fenêtre.

On se garde toutefois la possibilité d’ouvir un lien externe dans la même fenêtre en ajout la class= »internal » comme ceci :

<a href="http://www.exemple.com" class="internal">lien</a>