mi-schi.com

21. März 2008

Firefox: JavaScript Fehler “has no properties”

Abgelegt unter: Webdesign — Tags:, , — admin @ 17:37

Heute habe ich mindestens eine halbe Stunde meine Zeit verschwendet um die Lösung für den Fehlercode “getElementById(’id’) has no properties” zu finden. Der Name des ID-Attributes war korrekt und es war auch Inhalt in dem Element.

Die Lösung:
Firefox muss zuerst den HTML-Code laden und dann erst den JavaScript-Code. Somit kennt Firefox alle Namen der ID-Attribute und kann durch das nachfolgende JavaScript die Eigenschaften verändern.

falsch ist es also so:
1 <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN”
“http://www.w3.org/TR/html4/strict.dtd”
>
2 <html>
3 <head>
4 <title>Firefox: JavaScript Fehler “has no properties”</title>
5 <script type=”text/javascript”>
6 document.getElementById(’text’).style.display = none;
7 </script>
8 </head>
9 <body>
10 <div id=”text”>
11 geheimer Text
12 </div>
13 </body>
14 </html>

dies ist eine Lösung:
1 <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN”
“http://www.w3.org/TR/html4/strict.dtd”
>
2 <html>
3 <head>
4 <title>Firefox: JavaScript Fehler “has no properties”</title>
5 <script type=”text/javascript”>
6 window.onload = zauberei;
7 function zauberei() {
8 document.getElementById(’text’).style.display = none;
9 }
10 </script>
11 </head>
12 <body>
13 <div id=”text”>
14 geheimer Text
15 </div>
16 </body>
17 </html>

Man kann allerdings auch den JavaScript-Bereich erst am Ende des HTML-Dokumentes einfügen. Da aber bei Selfhtml steht, dass der JavaScript-Bereich immer in den Kopf-Bereich (<head>) soll, ist die obere Lösung die bessere.

Powered by WordPress ( WordPress Deutschland )