Target blank – xhtml 1.1 valid? JavaScript riešenie

By | 3. júna 2009

Populárne otváranie obsahu linku do nového okna pomocou zápisu target="_blank" sa stalo od zavedenia XHTML 1.1 nevalídnym. Riešením tohoto problému je použitie JavaScriptu.

Pre link, ktorý odkazuje na obsah, ktorý chceme zorbaziť ako target="_blank" zvolíme class (môže byť ľubovoľný, to však bude vyžadovať úpravu JavaScriptu).

<a class="nove-okno" href="stranka.html">Stránka</a>

S použitím jednoduchého JavaScriptu nájdeme všetky linky, uložíme ich do poľa, zistíme, či nemajú zodpovedajúci class a ak hej, pri ich otváraní použijeme event onclick s funkciou window.open(this.href), ktorá otvára odkaz v novom okne.

window.onload = function() {
    var links = document.getElementsByTagName('a');
    for (var i=0;i < links.length;i++) {
        if (links[i].className == 'nove-okno') {
            links[i].onclick = function() {
                window.open(this.href);
                return false;
            };
        }
    }
};

Pre priaznivcov jQuery je tu taktiež niečo. V tomto prípade je zápis o niečo jednoduchší.

$(function(){
    $('a.nove-okno').click(function(){
        window.open(this.href);
        return false;
    });
});

zdroje: http://www.webmasterworld.com/forum21/11165.htm, http://www.thefutureoftheweb.com/blog/target-blank-xhtml11

One thought on “Target blank – xhtml 1.1 valid? JavaScript riešenie

Pridajte komentár