setAttribute bei onLoad im Internet Explorer nicht möglich?
Georg L.
- javascript
Hallo,
folgende JavaScript-Funktion rufe ich mittels onload="verstecken('b1')" im body-Element auf:
function verstecken(id) {
if (document.getElementById) {
document.getElementById(id).setAttribute("style","display:none");
}
}
Firefox und der Internet Explorer 7 verstecken auch wie gewünscht das Element mit der ID "b1".
Nicht so jedoch der Internet Explorer in der Version 6. Ist jener grundsätzlich nicht in der Lage, Elementeigenschaften beim laden einer Seite zu ändern? Oder gibt es doch eine Möglichkeit, den beabsichtigten Effekt zu erreichen?
Beste Wünsche,
GL
Hallo,
folgende JavaScript-Funktion rufe ich mittels onload="verstecken('b1')" im body-Element auf:
function verstecken(id) {
if (document.getElementById) {
document.getElementById(id).setAttribute("style","display:none");
}
}
„setAttribute“ solltest du möglichst vermeiden, weil der IE damit generell Probleme hat.
Firefox und der Internet Explorer 7 verstecken auch wie gewünscht das Element mit der ID "b1".
Das wundert mich. Hat sich der IE7 JavaScript-technisch so verbessert?
Nicht so jedoch der Internet Explorer in der Version 6. Ist jener grundsätzlich nicht in der Lage, Elementeigenschaften beim laden einer Seite zu ändern?
Normalerweise schon. Ist JS bei dir aktiv? Kommt ein Fehler?
Oder gibt es doch eine Möglichkeit, den beabsichtigten Effekt zu erreichen?
Klappt folgendes bei dir?
function verstecken(id){
document.getElementById(id).style.display = "none";
}
window.onload = function(){
verstecken("b1");
}
mfg. Daniel
„setAttribute“ solltest du möglichst vermeiden, weil der IE damit generell Probleme hat.
Ah! Ich ging von einer Ursache in der Verbindung von onLoad und setAttribute aus, fälschlicherweise aber nicht von einem generellen Problem des IE...
Firefox und der Internet Explorer 7 verstecken auch wie gewünscht das Element mit der ID "b1".
Das wundert mich. Hat sich der IE7 JavaScript-technisch so verbessert?
In speziell diesem Punkt offenbar schon.
Nicht so jedoch der Internet Explorer in der Version 6. Ist
jener grundsätzlich nicht in der Lage, Elementeigenschaften beim
laden einer Seite zu ändern?Normalerweise schon. Ist JS bei dir aktiv? Kommt ein Fehler?
JS aktiv, kein Fehler (weder im IE, noch im Firefox).
Oder gibt es doch eine Möglichkeit, den beabsichtigten Effekt zu erreichen?
Klappt folgendes bei dir?
Ja. Herzlichen Dank für die prompte Hilfe.
Beste Wünsche,
GL
Hallo,
Das wundert mich. Hat sich der IE7 JavaScript-technisch so verbessert?
In speziell diesem Punkt offenbar schon.
Komisch. Bei mir scheint's im IE7 nicht zu funktionieren: Beispiel
Klappt folgendes bei dir?
Ja. Herzlichen Dank für die prompte Hilfe.
Falls du den Code so übernommen hast, kannst (bzw. solltest) du das „onload“-Attribut im <body> übrigens entfernen, da „window.onload“ genau den selben Zweck erfüllt und IMHO sauberer ist.
mfg. Daniel
Hallo,
Das wundert mich. Hat sich der IE7 JavaScript-technisch so verbessert?
In speziell diesem Punkt offenbar schon.
Komisch. Bei mir scheint's im IE7 nicht zu funktionieren: Beispiel
Hmm, dieses Beispiel klappt bei mir auch nicht. Ich muss mein Beispiel mal rauskramen...
Beste Wünsche,
Georg
Hallo!
Komisch. Das wundert mich auch, dass der IE 6 das nicht packt. Firefox macht es ohne Fehlermeldungen.
Allerdings kannst du deinem Problem so begegnen:
function verstecken(id) {
document.getElementById(id).style.display = "none";
}
Das ist sowieso kürzer und IMHO deswegen besser.
ciao, ww
Allerdings kannst du deinem Problem so begegnen: (...)
Auch Dir ein Dankeschön!
Beste Wünsche,
GL