Všetci dobre vieme, že je veľkým problémom prekryť niečím flash na stránke. Či už sa jedná o Ajaxové prehliadače obrázkov ako je Lightbox, či Thickbox, ale taktiež inými. Prekrytie samotného flashu je pre celú plejádu internetových browserov neriešiteľné a preto existuje trik, ktorým je možné tento problém oklamať. Jednoducho predtým, ako spustíme „ontop okienko“ schováme všetky embed prvky na stránke (prípadne len jeden, konkrétny). Podobné riešenie využíva aj populárny Lightbox. Všetko pomocou jednoduchého JavaScriptu…
Schováme embed prvky
embeds = document.getElementsByTagName('embed');
for(i = 0; i < embeds.length; i++) {
embeds[i].style.visibility = 'hidden';
}
Do poľa embeds načítame všetky Flash embedy a pomocou cyklu im nastavíme štýl visibility na hidden.
Odkryjeme embed prvky
embeds = document.getElementsByTagName('embed');
for(i = 0; i < embeds.length; i++) {
embeds[i].style.visibility = 'visible';
}
Obdobne postupujeme pri odkrývaní prvkov, keď poľu embedov nastavíme visibility naspäť na visible.
Aby sme dosiahli požadovaného efektu, zavoláme tieto script scripty na správnom mieste v správnom čase.
frko: na swfobject som wmode neskusal, ale ked som davnejsie testoval sifr tak tam mi wmode nefungoval (nefungoval spravne) na IE
používam swfobject.js a pri vkladaní flashu paremeter
fn.addParam(‚wmode‘, ‚transparent‘);
to mi prekrývanie vyriešilo.