Autor | Zpráva | ||
---|---|---|---|
m Profil * |
#1 · Zasláno: 18. 1. 2011, 13:52:49
Ahoj, mam nasledujici kod:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs" lang="cs"> <head> <meta http-equiv="content-language" content="cs" /> <meta name="language" content="cs" /> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <script type="text/javascript"> function zobrazit(i){ if (i.style.display=='none'){ i.style.display=''; } else i.style.display='none' } </script> </head> <body> <h1 onClick="zobrazit(tux)">Zobrazit / skryt</h1> <p id="tux">dlouhy odstavec textu</p> <script type="text/javascript"> document.getElementById('tux').style.display = "none"; </script> </body> </html> Ten funguje bez problemu, ale kdyz ho upravim, tak to nejde. Asi to bude blbost, ale nevite co stim? <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs" lang="cs"> <head> <meta http-equiv="content-language" content="cs" /> <meta name="language" content="cs" /> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <script type="text/javascript"> function on-off(id, zapnout-vypnout){ if (zapnout-vypnout=='1'){ id.style.display=''; } else id.style.display='none' } function zobrazit(i){ if (i.style.display=='none'){ i.style.display=''; } else i.style.display='none' } </script> </head> <body> <h1 onClick="on-off(tux, 1)">Zobrazit</h1> <h1 onClick="on-off(tux, 0)">Skryt</h1> <h1 onClick="zobrazit(tux)">Zobrazit / skryt</h1> <p id="tux">dlouhy odstavec textu</p> <script type="text/javascript"> document.getElementById('tux').style.display = "none"; </script> </body> </html> |
||
Chamurappi Profil |
#2 · Zasláno: 18. 1. 2011, 13:57:52
Reaguji na m:
„Ten funguje bez problemu“ Ve všech prohlížečích? Pochybuji. Až ti začne vadit, že to někde nefunguje, přepiš všechny tux v onclick na document.getElementById('tux') .
„kdyz ho upravim, tak to nejde“ Hm, zapnout mínus vypnout … kolik myslíš, že to vyjde, když to JS zkusí spočítat? :-)
Totéž u on mínus off . Do názvů proměnných a funkcí nedávej matematické operátory a pojede to.
|
||
peta Profil |
#3 · Zasláno: 19. 1. 2011, 15:43:24 · Upravil/a: peta
zapnout-vypnout, on-off
Pro nazvy funkci a promennych jsou v JS i CSS povolene znaky azAZ09_ a musi zacinat pismenem. on-off = A - B // jestli to napises s mezerami nebo ne, na tom nesejde Mas editor s obarvovanim syntaxe? <h1 onClick="on-off(tux, 1)">Zobrazit</h1> <h1 onClick="on-off(tux, 0)">Skryt</h1> H1 by mel byt jeden jediny. <h1 onClick="zobrazit(tux)">Zobrazit / skryt</h1> document.getElementById('tux').style.display = "none"; Proc nekde pouzivat tux a jinde getElementById('tux') ? Priklanim se k Chamurappi, pouzij getElementById. Zkus se obcas podivat, co vypisuje chybova konzole pri spusteni JS. Ve FF je to vyborny nastroj, pise i radek, kde chyba nastala. Chamurappi Reklamace, tady to melo asi obarvit jinak syntaxi, provedu test s mezerami... if (zapnout-vypnout=='1') if (zapnout - vypnout=='1') Aha, test nevysel, ten obarvovac to asi neumi :) |
||
Chamurappi Profil |
#4 · Zasláno: 19. 1. 2011, 16:00:08
Reaguji na petu:
„nazvy funkci a promennych jsou v JS i CSS povolene znaky azAZ09_ a musi zacinat pismenem“ Ta dovolená škála znaků je širší, fungují třeba i znaky s diakritikou. „H1 by mel byt jeden jediny.“ Na počtu nezáleží. Hlavně by v něm ale měl být nadpis a ne popis činnosti, kterou vyvolá kliknutí. „tady to melo asi obarvit jinak syntaxi“ Zdejší obarvovač rozpoznává operátor, obaluje ho do <span> u, ale nemá přiřazené žádné styly. Ani mě nenapadá, jaká barva by se k němu hodila — cokoliv tmavého bude nerozeznatelné od té tmavě zelené a cokoliv světlého bude zase příliš zářit. Asi to nechám být. Koukám, že operátory nezvýrazňuje ani Visual Studio, ani Notepad++. Zřejmě se předpokládá, že se člověk dozví o operátorech jiným způsobem než z barvy kódu v editoru.
|
||
Časová prodleva: 13 let
|
0