Como ya sabemos XHTML Strict no permite el atributo target, así que por descontado no podemos usar target="_blank"
como antaño. Sin embargo existen situaciones en las que puede ser conveniente abrir una nueva ventana.
En muchos sitios web se usa rel="external"
para identificar aquellos enlaces que deben abrirse en nuevas ventanas a través de una solución en Javascript. El problema es que algunos de esos enlaces no son recursos externos sino páginas dentro del mismo dominio, lo cual resulta contradictorio.
En estos casos _blank
y rel="external"
son parecidos pero sustancialmente diferentes.
Independientemente de si el recurso es externo podemos añadir una clase «tblank» y mediante jQuery abrir el enlace en la nueva ventana. Este método no interfiere en la semántica del sitio web y la funcionalidad es similar.
Código en jQuery:
<script type="text/javascript"> $(function() { $('a[class="tblank"]').click( function() { window.open( $(this).attr('href') ); return false; }); }); </script>
Con estas pocas líneas, jQuery se encarga de recopilar todos los enlaces que tengan una clase «tblank», les adjunta un evento «click», que al dispararse abre una nueva ventana con el enlace contenido del atributo «href.» Desde luego es más fácil verlo que explicarlo 😛
Enlace interno en nueva ventana:
<a href="/legal" class="tblank" title="Ver en nueva ventana la nota legal">nota legal</a>
Enlace externo en nueva ventana:
<a href="http://aurea.es" class="tblank" rel="external" title="Abrir en nueva ventana aurea.es">http://aurea.es</a>