Portál AbcLinuxu, 24. října 2025 10:55
document.getElementById('odp') != null
?
odpoved=document.getElementById('odp');
if (typeof odpoved == "object")
{
if (document.getElementById('odp').innerHTML)
{
casovac = window.setInterval("odpocet()", odpocitavani*100);
}
}
Mozna ze by to slo nacpat do jednoho ifu, ale nejsem si jisty, jakym zpusobem Javascript vycisluje vyrazy - pokud nedela short-circuit (tj. zruseni vyhodnocovani v okamziku, kdy je vysledek jasny, treba false u and nebo true u or), vyhodilo by to chybu..
if (document.getElementById('odp')) {
alert("Zahajuji odpočet");
casovac = window.setInterval("alert('odpocet');odpocet()", odpocitavani*100);
}
Jestli vám to nezobrazí ani „Zahajuji odpočet“ (a element s id="odp" ve stránce bude), tak sním vlastní klobouk. Dál může být problém v tom, že neexistuje globální proměnná odpocitavani nebo globální funkce odpocet().
document.getElementById() nefunguje v historických verzích MSIE.
document.getElementById() nefunguje v historických verzích MSIETo řeším obvykle:
if (!document.getElementById && document.all)
document.getElementById = document.all;
document.getElementById() volá tuhle metodu a tam, kde je document.all používá to. Rozdíl je v tom jediný – nezbořím si tím test na existenci document.getElementById. Někdy může být potřeba emulovat chování document.getElementById() trochu jinak, a pak potřebuju vědět, že nativní getElementById() není k dispozici.
if (! document.getElementById) {
if (to && ono && ...) document.getElementById = fn_getElementById_1
else if (to && ono) document.getElementById = fn_getElementById_2
else if (to) document.getElementById = fn_getElementById_3
else if (ono) document.getElementById = fn_getElementById_4
...
}
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.