Auteur: sima - 28 mei 2009 - 00:55 - Gekeurd door: Koen - Hits: 4657 - Aantal punten: (0 stemmen)
Met de komst van XHTML is er wat veranderd op het gebied van het aansturen van links. Het is met een XHTML 1.0/1.1 doctype niet meer toegestaan om gebruik te maken van 'target="_blank"' om een pagina te laten openen in een nieuw venster of tab van de browser.
Onderstaand wordt een oplossing aangedragen waarbij de pagina wel zal valideren. Met behulp van javascript wordt een nieuwe pagina geopend, met als locatie de url van de huidige link.
Deze oplossing is tevens unobtrusive. Wanneer de gebruiker onverhoopt géén gebruik maakt van javascript dan zal deze link nog werken, maar zal dan niet geopend worden in een nieuw venster of tab. De link zal in dat geval dus niet breken.
Code:
Voor een enkel linkje kan je onderstaande code gebruiken
<script type="text/javascript">
window.onload = function () {
var elements = document.getElementsByTagName('a'),
i,
length = elements.length;
for (i = 0; i < length; ++i) {
if(elements[i].getAttribute('rel') === 'external') {
elements[i].setAttribute('target', '_blank');
}
}
};
</script>
<script type="text/javascript">
window.onload=function(){
var elements = document.getElementsByTagName('a'),
i,
length = elements.length;
for(i =0; i < length;++i){
if(elements[i].getAttribute('rel')==='external'){
elements[i].setAttribute('target','_blank');
}
}
};
</script>
Bovenstaande zet linkjes zoals hieronder dus om naar een target="_blank"