Autor | Zpráva | ||
---|---|---|---|
Peter 123 Profil * |
#1 · Zasláno: 30. 4. 2010, 22:42:51
Javascript som si velmi oblubil, je jednoduchy a lahko sa v nom pisu scripty.
Prave sa ho ucim ale toto mi nejde : Take cudne ze mi zobrazi iba cislo 2, a potom sa len nacitava sctranka... <script type="text/javascript"> function zobrazRiadok() { i = 0; while(i<=20) { document.write("<div style=\"width:200px; height:100px; background:black\"></div>"); break; } } cas = setInterval("zobrazRiadok()", 1000); document.write(cas); </script> |
||
Nox Profil |
#2 · Zasláno: 30. 4. 2010, 23:32:52
document.write se spouští (možná řeknu trochu nepřesně) jen při (úvodním) vykreslení stránky
takže document.write budeš muset nahradit manipulací s innerHTML atributem prvku ve kterém chceš řádky mít nebo připojováním elementů* (bude to snad popsané na djpw, na to už používám knihovnu (jQuery), tak teď nevim) čeho si chtěl docílit tím document.write(cas); ? setInterval/Timeout vrací identifikátor na to časování aby pak to konkrétní časování mohl zrušit nepodmíněný break v cyklu znamená, že je tam ten cyklus zbytečný, když to stejně prijde jen jednou, i je 0 a není posláno zveku parametrem, takže to taky neovlivní pokud break odděláš tak bacha, musíš přidat přičítání i, jinak bys dostal nekonečnou smyčku *) pokud bys jich chtěl přidávat v budoucnu hodně naráz, tak by to asi bylo lepší najednou přes innerHTML nebo něco, pak se -snad- provede update DOM jen jednou místo po každém přidání |
||
Miloš Profil |
#3 · Zasláno: 1. 5. 2010, 05:34:03
Peter 123:
To já si javascript neoblíbil; jednak ho neumím, jednak ho i tak nemám rád ;-) Ono to bude tím, že nejsem programátor. Ale jestli ti to nějak pomůže, kdysi jsem v něm zbastlil takovéhle „hydiny“: http://pokusna-krysa.webpark.cz/smes/hodiny.html |
||
Conny Profil * |
#4 · Zasláno: 1. 5. 2010, 08:47:29
Pokud si chceš zjistit jestli tohle funguje tak vyměň document.write za alert(). Pokud to hned chceš k něčemu použít tak použij jak už napovídá Nox
document.getElementById("iddivu").innerHTML="text"; |
||
Peter 123 Profil * |
#5 · Zasláno: 1. 5. 2010, 10:41:39
tak som to skusil:
... ("<div id=\"blabla\" alert(cas); document.getElementById("blabla").innerHTML="zobrazRiadok()"; a pri alerte len ukaze cislo 2, a potom znova to nacitavanie stranky.. A innerHTML nejde. Inac jak sa v javascripte da zavolat class? napr <div class="blabla"></div> |
||
SpotRudloff Profil |
#6 · Zasláno: 1. 5. 2010, 16:58:23
A zkusils'
document.getElementByClass("blabla").innerHTML="zobrazRiadok()"; |
||
Nox Profil |
#7 · Zasláno: 1. 5. 2010, 17:40:34
šmarja lidi :)
Peter 123, SpotRudloff: "zobrazRiadok()" je řetězec, text, to nic nedělá ikdyby to tu funkci pustilo, tak to nejspíš nic neudělá, nebo možná vymaže stávající obsah, protože zobrazRiadok() přece nic nevrací, není tam žádný return, je to jakoby void funkce, takže buď to vpisovat přímo v ní (a odjebnout KONEČNĚ to document.write), nejlíp tak že cílový element (anebo aspoň ID) předáme jako parametr SpotRudloff: getElementByClassName neexistuje Peter 123: Pokud chceš lepší vybírání elementů, použij cssQuery, Sizzle nebo rovnou jQuery (to už je komplet obecná knihovna) |
||
Časová prodleva: 14 let
|
0