Dobrý den,
několik elementů mi v JS konzoli hlásí, že jsou null/undefined, a nelze proto nastavovat jejich vlastnosti atp. Jenže ono to funguje. Normálně vše jede - všechny vlastnosti elementů stěžujících si na null/undefined pracují jak mají. Problém nastává, když chci takovýto element ovládat z HTML - třeba v onclick li mám location.replace na iframe - a to už nejen, že hodí error, to už ani nefunguje...
dialog = document.getElementById("dialog");
section = document.getElementsByTagName("section")[0];
dialogContainer = document.getElementById("dialogContainer");
dialog.onload = function(){dialogContainer.style.display = "block";}
Zde třeba prý nejde nastavit onload iframe - přitom to funguje. dialog rozhodně není null... Mám to samozřejmě ve window.onload a jak píši - z JS jde všechno. Všechny stěžující si elementy musím handlovat z JS - jinak to nejde...
Uncaught TypeError: Cannot set property 'onload' of null main.js:22
window.onload main.js:22
Uncaught TypeError: Cannot read property 'location' of undefined (index):36
onclick
Na 22. řádku je nastavení onload toho dialogu (iframe)... 36. řádek index.php zní:
<li onclick="dialog.contentDocument.location.replace('manage.php')">Spravovat</li>
(proměnná dialog vzniká ještě před načtením celé stránky - vždy všechny globální proměnné definuji v hlavičce scriptu)
Zase - při alokaci eventu z JS to jede. O co mu jde? :D
http://kdlap.lerainsoft.eu
Klikněte na "Spravovat" -> error. Dejte do konzole: "dialog.contentDocument.location.replace("manage.php")" a jede to (byť s errorem) - nechápu...
Děkuji.