Autor Zpráva
Anonymní
Profil *
ako sa da pomocou JavaScriptu vypnut vsetky staly na stranke ?
Vít Dlouhý
Profil
U pixyho je na to favelet - http://pixy.cz/blog/favelets/
Anonymní
Profil *
co ??
Yuhů
Profil
To podstatné je, že kolekce všech stylů se dá dosáhnout přes document.styleSheets. A každý prvek této kolekce má vlastnosti disabled (true | false), který říká, jestli je daný styl vypnutý.

Následující skrpt definuje funkci, která vypíná styly. Funkce si po jednom najde všechny styly a nastaví jim disabled = true.

<script>
function vypnoutStyly(){
var i=0;
if(document.styleSheets.length>0)
{
for(i=0;i<document.styleSheets.length;i++)
document.styleSheets[i].disabled=true;
}
}
</script>

Tento zápis není otestován.
Anonymní
Profil *
proste, pozrite tuto stranku v explorery. ked dam z bielej na cervenu ide, z bielej na ciernu tiez, z cervenej na ciernu ide, ale z CIernej na CErvenu ne :-(( nevieto to dakto odstranit ?
PS: neberte ohlad na cistotu kodu... to este trochu zmenim
Yuhů
Profil
pozor, to, co popisuješ že jde a nejde, přece závisí na pořadí, v jakém je to klikané!

Tohle je původní kód:

<span class="red"><a style="cursor: hand; cursor: pointer" onclick="document.styleSheets['red'].disabled = false">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a></span>
<span class="black"><a style="cursor: hand; cursor: pointer" onclick="document.styleSheets['black'].disabled = false">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a></span>


a takhle bych ho předělal:

<span class="red"><a style="cursor: hand; cursor: pointer" onclick="document.styleSheets['red'].disabled = false; document.styleSheets['black'].disabled = true">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a></span>
<span class="black"><a style="cursor: hand; cursor: pointer" onclick="document.styleSheets['black'].disabled = false; document.styleSheets['red'].disabled = true;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a></span>

jinak řečeno jenom jsi je zapínal, ale nevypínal.

V praxi se spíše vyplatí mít styly v externích souborech a přidat je linkem. Potom je jednodušší tomu linku měnit href.
Anonymní
Profil *
diky to je super, ale c oked tam chcem mat viac napr. 10 stylov. Musim pisat vypnutie vsatkych zaradom ? neje naejaky prikaz na vypnutie prave zapnuteho sytlu, alebo daco podobne ?
a neidem na to velmi zlozito ? napr na 3D gamers to maju urobene nejako pomocou php. neide to nejako jednoducho takym sposobom ?
Yuhů
Profil
však o tom píšu výše:

> V praxi se spíše vyplatí mít styly v externích souborech a přidat je linkem. Potom je jednodušší tomu linku měnit href.

Pokud bys to chtěl vypínat a zapínat přes javascript, tak je fakt blbost vypočítávat tam deset stylů. Možná si nadefinuj globální proměnnou a ulož do ní aktuálně zapnutý styl. Pak budeš vědět, co máš vypnout.
Toto téma je uzamčeno. Odpověď nelze zaslat.