Autor | Zpráva | ||
---|---|---|---|
GUSTO Profil * |
#1 · Zasláno: 30. 12. 2009, 16:57:57
Dobry den,
neviete mi poradit preco moj script nefunguje? css: #box {width:100px; height:100px; background: blue; opacity:1} <script> var box = document.getElementById("box"); function doBox() { setInterval(function() { box.style.opacity -= .02; },20); } doBox(); </script> Chcem docielit toho aby sa postupne stracal box. Diky. |
||
mckay Profil |
#2 · Zasláno: 30. 12. 2009, 17:40:39
GUSTO:
Pro lepší orientaci diskutujících, kteří se ti rozhodnou pomoci, vkládej prosím kód mezi. . |
||
Jan Tvrdík Profil |
#3 · Zasláno: 30. 12. 2009, 17:57:32
GUSTO:
Ve style jsou jenom inline styly. Takže je potřeba použít něco takového: <style> #box { width: 100px; height: 100px; background-color: blue; opacity: 0.7; } </style> <div id="box">Lorem ipsum dolor sit amet.</div> <script> var box = document.getElementById("box"); box.style.opacity = getStyle("box", "opacity"); setInterval(function() { box.style.opacity -= 0.01; }, 10); // @link http://www.quirksmode.org/dom/getstyles.html function getStyle(el,styleProp) { var x = document.getElementById(el); if (x.currentStyle) var y = x.currentStyle[styleProp]; else if (window.getComputedStyle) var y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp); return y; } </script> |
||
_es Profil |
#4 · Zasláno: 30. 12. 2009, 18:25:06 · Upravil/a: _es
GUSTO:
JavaScriptom sa dajú takýmto spôsobom čítať len tie vlastnosti, ktoré boli tak aj nastavené. Teda najprv musíš nastaviť opacity na 1 (v JS kóde). Nemáš nijako ošetrené, čo sa má stať, ak to klesne na nulu. Takto by to išlo do mínus nekonečna. A nemusí to fungovať pre všetky prehliadače, tie riešenia si však už môžeš nájsť. Jednoducho si overíš prehliadače, kde to funguje napríklad týmto kódom v adresovom riadku: javascript:document.body.style.opacity =1; setInterval(function() {document.body.style.opacity -= .02;},50);void 0; |
||
GUSTO Profil * |
#5 · Zasláno: 30. 12. 2009, 22:10:56
_es:
Co to znamena "void 0" ? Jan Tvrdík Co tym myslis inline styly? _es: JavaScriptom sa dajú takýmto spôsobom čítať len tie vlastnosti, ktoré boli tak aj nastavené. Teda najprv musíš nastaviť opacity na 1 (v JS kóde). Tebe tiez nerozumiem, ved v css mam definovane ze ten box ma opacity 1, a cez javascript som si vytvoril jednoduchu funkciu ktora berie opacity az kym nebude vidno box. |
||
_es Profil |
#6 · Zasláno: 30. 12. 2009, 22:31:03
GUSTO:
„Co to znamena "void 0" ?“ Výsledkom toho výrazu je JavaScriptová hodnota undefined, posledný výraz musí mať takú hodnotu, aby nedošlo k prepísaniu aktuálneho dokumentu. „ved v css mam definovane ze ten box ma opacity 1“ Áno, no to je tá zvláštnosť, že to musíš zadať aj v JS, inak tá vlastnosť nemá číselnú hodnotu. Alebo použiť inline zadanie štýlu. > Jan Tvrdík > Co tym myslis inline styly? Myslí tým: <div id="box" style="opacity:1">Lorem ipsum dolor sit amet.</div> |
||
Časová prodleva: 14 let
|
0