Jochen Kubik: window.location.href= in IE5

Hi Leute,

ich habe eine Seite mit o.g. JS gebastelt. Funkt super in IE und NS, nur der IE5 macht nix!???

Was ist falsch? Zu sehen unter:
http://www.margit.jochen-kubik.de

Heute solltet ihr auf den Mittwoch klicken um es auszuprobieren ;-)

Grüße

JK

  1. Hi,

    ich habe eine Seite mit o.g. JS gebastelt. Funkt super in IE und NS, nur der IE5 macht nix!???

    aus dem Quellcode:

    [...]

    if (jetzt.getDay()!=1) alert('Aber hallo, guck doch mal auf den Kalender, Du hast den falschen Tag erwischt. Oder wolltest Du etwa schummeln?');
    if (jetzt.getDay()==1) window.location.href='montag.html';

    Hast Du mal alert(jetzt.getDay()) und alert(jetzt.getDay()==1) ausgeben lassen?

    Übrigens: JavaScript beherrscht "else".

    Cheatah

    1. Hi,

      aus dem Quellcode:

      [...]

      if (jetzt.getDay()!=1) alert('Abe...a schummeln?');
      if (jetzt.getDay()==1) window.location.href='montag.html';

      Hast Du mal alert(jetzt.getDay()) und alert(jetzt.getDay()==1) ausgeben lassen?

      Nee, weil ich damit leider nix anfangen kann (JS-DAU),
      die Wochentagberechnung funkt ja im Prinzip, mir scheint nur, daß der IE5 ein Problem mit "window.location.href='montag.html'" hat!
      Oder kann es sein, daß er das href="#" nimmt anstatt den JS Jump?

      Ich versuche gerade einen Rechner mit IE 5.5 zu finden!

      Übrigens: JavaScript beherrscht "else".

      Weiß ich, bringt aber keine Veränderung!?

      JK

      1. Hi,

        Hast Du mal alert(jetzt.getDay()) und alert(jetzt.getDay()==1) ausgeben lassen?
        Nee, weil ich damit leider nix anfangen kann (JS-DAU),

        lass Dir bei (vermeintlichen?) Fehlern grundsätzlich alle Objekte, Methoden, Prüfungen usw. ausgeben, vergleiche das Ergebnis mit dem, das Du erwartet hast.

        die Wochentagberechnung funkt ja im Prinzip,

        Sie soll nicht "funken", sondern funktionieren. Wär sonst zu gefährlich (ein Computer besteht aus hochsensibler Elektronik).

        Die o.g. Prüfungen sollen bewirken, dass Du "im Prinzip" entweder durch "garantiert" oder durch "nicht" ersetzen kannst.

        mir scheint nur, daß der IE5 ein Problem mit "window.location.href='montag.html'" hat!

        Nein, eigentlich nicht.

        Oder kann es sein, daß er das href="#" nimmt anstatt den JS Jump?

        Oh, das ist mir gar nicht mehr aufgefallen. Ich wollte Dich schon auf das fehlende href-Attribut hinweisen... Ja, wenn Du aus einem Event-Handler nicht "false" als Returnwert zurücklieferst, wird die eigentliche Aktion (in diesem Fall die des Linkklicks) ausgeführt.

        Cheatah

        1. Hi Cheatah,

          Sie soll nicht "funken", sondern funktionieren. Wär sonst zu gefährlich (ein Computer besteht aus hochsensibler Elektronik).

          ...wo Du Recht hast hast Du Recht

          Die o.g. Prüfungen sollen bewirken, dass Du "im Prinzip" entweder durch "garantiert" oder durch "nicht" ersetzen kannst.

          verstanden!

          Oder kann es sein, daß er das href="#" nimmt anstatt den JS Jump?

          Oh, das ist mir gar nicht mehr aufgefallen. Ich wollte Dich schon auf das fehlende href-Attribut hinweisen... Ja, wenn Du aus einem Event-Handler nicht "false" als Returnwert zurücklieferst, wird die eigentliche Aktion (in diesem Fall die des Linkklicks) ausgeführt.

          _Das_ ist es!!!

          habe einfach noch 'return false' angefügt, und jetzt funktioniert ;-) es!!!

          Würdest Du Dir den Code nochmal angucken!

          Hast mir echt aus der Patsche geholfen... Vielen Dank!!!

          JK

          1. Hi,

            habe einfach noch 'return false' angefügt, und jetzt funktioniert ;-) es!!!

            *g*

            Würdest Du Dir den Code nochmal angucken!

            Warum? Wenn's jetzt funktioniert... :-) Ich kann Dir höchstens raten, den JavaScript-Code in eine Funktion auszulagern, der Du die Werte "Tageszahl" und "Ressource" übergibst. Das verringert Tippfehler - und Wartungsaufwand, von der Codemenge ganz zu schweigen.

            Cheatah

  2. Hi Jochen,

    else (jetzt.getDay()==3) window.location.href='mittwoch.html';"
    ^^^^^^^^^^^^^^^^^^^^^^^^^

    sieht für mich etwas merkwürdig aus, bei mir wäre es _entweder_ nur

    else window.location.href='mittwoch.html';

    _ohne_ Bedingung in Klammer

    _oder_

    else if (jetzt.getDay()==3) window.location.href='mittwoch.html';

    Die JS-Konsole im NN6 gibt auch an der Stelle eine Fehlermeldung aus:
    Error: missing ; before statement
    Source File:
    Line: 2, Column: 25
    Source Code:
    else (jetzt.getDay()==3) window.location.href='mittwoch.html';

    Grüße aus Ehrenfeld,
    Elya

    1. Hi Elya

      erstmal Danke für die Unterstützung!!!

      else (jetzt.getDay()==3) window.location.href='mittwoch.html';"
      ^^^^^^^^^^^^^^^^^^^^^^^^^

      sieht für mich etwas merkwürdig aus, bei mir wäre es _entweder_ nur

      else window.location.href='mittwoch.html';

      Funktioniert leider auch nur in NS und IE6, IE5 und IE5.5 lassen sich einfach nicht zum JS Sprung bewegen ;-(((

      _ohne_ Bedingung in Klammer

      _oder_

      else if (jetzt.getDay()==3) window.location.href='mittwoch.html';

      beides ausprobiert, leider keinen Erfolg!

      Die JS-Konsole im NN6 gibt auch an der Stelle eine Fehlermeldung aus:
      Error: missing ; before statement
      Source File:
      Line: 2, Column: 25
      Source Code:
      else (jetzt.getDay()==3) window.location.href='mittwoch.html';

      wo muß denn dann das ';' hin???
      Doch nicht etwa zwischen  ==3) ; win....

      Grüße
      JK