Mediante un script podemos abrir todos los enlaces externos en una nueva página, ahorrándonos la inclusión en cada uno de ellos de target="_blank"
y de paso validamos nuestra web con ello.
- Colocamos el script entre las etiquetas
<head>
y</head>
o en nuestro archivo .js<script language="javascript"> //><![CDATA[ var dominio1 = "tupagina.com"; var dominio2 = "www.tupagina.com"; //var dominio3 = "www.otraweb.com"; function LinksExternos() { var Externo; if (document.getElementsByTagName('a')) { for (var i = 0; (Externo = document.getElementsByTagName('a')[i]); i++) { if ( Externo.href.indexOf(dominio1) == -1 && Externo.href.indexOf(dominio2) == -1 //&& Externo.href.indexOf(dominio3) == -1 ) { Externo.setAttribute('target', '_blank'); //Externo.setAttribute('class', 'linkexterno'); } } } } window.onload = function() { LinksExternos(); } //]]> </script>
- Cambia
tupagina.com
ywww.tupagina.com
con la dirección de tu web (con y sin www) correspondientes a las variables dominio1 y dominio2 respectivamente.
Para evitar que otro dominio se abra en una nueva página se declara como una nueva variable, por ejemplo:
var dominio3 = "www.otraweb.com";
y se agrega en la condición:
&& Externo.href.indexOf(dominio3) == -1
Otra utilidad para este script es la de poder aplicarle una clase a los link externos agregando en la función:
Externo.setAttribute('class', 'linkexterno');
Para los usuarios de Blogger pueden visitar el artículo: “Abrir los links externos en una nueva página en Blogger” con las adecuaciones necesarias para este sistema