Daniel: IE führt IF-Anweisung nicht aus?!

Hi allerseits.

Das Script

if(ie){
   alert("crap!");
   document.getElementById("scrollbar1").height = ((winhigh-20)/6);
   document.getElementById("scrollbar2").height = ((winhigh-20)/6);
   ...
}

funktioniert nur mit dem eingebauten alert. Ohne werden die anderen Anweisungen nicht ausgeführt.
'ie' und 'winhigh' sind Variablen, die ich an anderer Stelle erfolgreich mit IE einstze.

Hat jemand 'ne Ahnung warum?

Ich zweifle echt langsam an meinem Verstand...

  1. hi

    if(ie){
       alert("crap!");
       document.getElementById("scrollbar1").height = ((winhigh-20)/6);
       document.getElementById("scrollbar2").height = ((winhigh-20)/6);
       ...
    }

    funktioniert nur mit dem eingebauten alert. Ohne werden die anderen Anweisungen nicht ausgeführt.
    'ie' und 'winhigh' sind Variablen, die ich an anderer Stelle erfolgreich mit IE einstze.

    das Element mit id="scrollbar1" (bzw. 2) existiert? Und es ist etwas, wofür es ein height="" gibt? Sonst könnte es noch Probleme geben, wenn da keine Ganzzahl rauskommt...

    Grüße aus Bleckede

    Kai

    1. das Element mit id="scrollbar1" (bzw. 2) existiert? Und es ist etwas, wofür es ein height="" gibt? Sonst könnte es noch Probleme geben, wenn da keine Ganzzahl rauskommt...

      Die Elemente existieren und sind Images. Wenn das alert("crap!") im IF-Block drinsteht funktioniert auch alles - obwohl da je nach Fenstergrösse keine Ganzzahl rauskommt. Das werde ich dann aber noch durch abrunden verbessern.

      Sobald ich das alert lösche werden die Höhen-Zuweisungen nicht mehr abgearbeitet...

      Verzweifelten Gruss aus München,

      Daniel

      1. hi

        Sobald ich das alert lösche werden die Höhen-Zuweisungen nicht mehr abgearbeitet...

        -> Browser schrott.

        Grüße aus Bleckede

        kai

        1. -> Browser schrott.

          Meine Meinung. Deshalb ja auch alert("crap!") ;-)

          Na gut. Dann back to scratch und das ganze anders aufziehen. Trotzdem danke für die Tips.

          MfG,
              Daniel

      2. Hi Daniel,

        was wäre denn, wenn Du nach dem Vorhandensein der Funktion GetElementByID() fragst? Wenn er die kennt, darf er sie auch ausführen. Das hat bisher eigentlich immer geklappt.

        Also ungefähr so:

        if (document.all)
                document.all[id].style.backgroundColor=farbe;
             else
                if (document.getElementById)
                 document.getElementById(id).style.backgroundColor=farbe;
                else
                   if (document.layers)
                      document.layers[id].bgColor=farbe;

        Gruß

        Tom

  2. Hallo Daniel,

    if(ie){
       alert("crap!");
       document.getElementById("scrollbar1").height = ((winhigh-20)/6);
       document.getElementById("scrollbar2").height = ((winhigh-20)/6);
       ...
    }

    funktioniert nur mit dem eingebauten alert. Ohne werden die anderen Anweisungen nicht ausgeführt.

    Wird der Code zufällig beim Einlesen der Datei ausgeführt? Dann könnte es ja sein, dass die Werte noch gar nicht zur Verfügung stehen. Lass dir statt "crap!" doch mal document.getElementById("scrollbar1").height ausgeben.

    Grüße, Stefan

    1. Hi!

      Wird der Code zufällig beim Einlesen der Datei ausgeführt? Dann könnte es ja sein, dass die Werte noch gar nicht zur Verfügung stehen.

      Waere auch meine Vermutung.

      Lass dir statt "crap!" doch mal document.getElementById("scrollbar1").height ausgeben.

      Oder besser nur document.getElementById("scrollbar1") oder typeof(document.getElementById("scrollbar1")). Da muesste dann etwas wie [object HTMLXXXElement] oder aehnliches rauskommen, auf jeden fall nicht undefined.

      So long

      --
      Invest in America - Buy a Congressman!
          -- a slogan from http://www.evolvefish.com/

  3. Hallo

    Das Problem habe ich auch schon gehabt.
    Nach einigem probieren habe ich dann das alert durch ein window.scrollBy(0,0)
    ersetzt und dann gings. Frag jetzt aber nicht warum!!

    Gruss
    Ingrid