Mein kleine Javascript funktioniert nicht mit IE aber mit Mozilla

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Mein kleine Javascript funktioniert nicht mit IE aber mit Mozilla

    Hallo,

    ich bin gerade ein wenig am verzweifeln. Ich habe ein Skript, was die Url der aktuellen Datei ausliest, etwas ergänzt (_p) und anschließend diese Url in einem neuen Fenster aufruft. Unter Mozilla (1.4) funtkioniert folgendes Skript einwandfrei, nur mit dem IE (5.0) klappts nicht. Was mache ich falsch? Bitte helft mir.

    PHP-Code:
    <script>
    <!--
    function 
    link(){
      var 
    adress,newadress;
      
    adress location.href;
    //    document.write(adress);
      
    newadress adress.replace(/.*?([^\/]+)$/,"p_$1");
    //    document.write(newadress);
          
    window.open (newadress,"_blank");
    }
    -->
    </
    script>
    </
    head>

    <
    body onload="javascript:link()">

    </
    body>
    </
    html
    Zuletzt geändert von busstop; 09.07.2004, 11:11.

  • #2
    Versuche es mal so: <body onload="link();">
    [COLOR=#9C5245]Internet-Explorer[/COLOR] [COLOR=#334D7B]User und stolz drauf! :P[/COLOR]

    Kommentar


    • #3
      Re: RegExp funktioniert nicht mit IE aber mit Mozilla

      1. kontrollausgabe newadress ...?
      2. warum _blank als fenstername, warum keinen "normalen"? window.open öffnet doch eh schon ein neues fenster.
      3. das verd***te "javascript:" aus dem eventhanler rausnehmen, aber bisschen plötzlich bitte ...
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        1. Das habe ich gerade ebend gesagt.
        2. Und gewöhne Dir bitte einen anderen ton an.

        edit: 1. gilt nicht wegen zeitgleichem posten
        Zuletzt geändert von eRoZion; 09.07.2004, 11:51.
        [COLOR=#9C5245]Internet-Explorer[/COLOR] [COLOR=#334D7B]User und stolz drauf! :P[/COLOR]

        Kommentar


        • #5
          Danke für die Tipps. Doch leider scheint es an der RegExp zu liegen mit der der IE nicht klarkommt.
          Mit der RegExp möchte ich alles vor dem letzten Slash und den Slash selbst löschen und dann "p_" vorsetzten. Warum funktioniert das nicht mit dem IE?

          Kommentar


          • #6
            Original geschrieben von busstop
            Warum funktioniert das nicht mit dem IE?
            mach mal 'ne kontrollausgabe von adress in beiden browsern - um zu sehen, ob du den ausdruck überhaupt auf einen identischen string anwendest ...
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Der Wert der Variable adress ist in beiden Fällen absolut identisch!?

              Wenn ich die RegExp so drinlasse, erhalte ich im IE die Fehlermeldung:
              ...
              Zeile:
              Zeichen: 1
              Code: 0
              Fehler: Objekt erwartet
              ...

              Lasse ich die Regexp weg, gibt es keine Fehlermeldung.

              Kommentar


              • #8
                Hat sich erledigt: Scheinbar hat der IE Probleme mit "?" Bestmatch.

                Wenn man .*? vor der runden Klammer weglässt, funktioniert es:

                adress.replace(/([^\/]+)$/,"p_$1");

                So wird zwar der vollständige Link übergeben, aber das ist in diesem Fall nicht schlimm.

                Trotzdem danke für die Tipps.

                Gruß
                Jens

                Kommentar

                Lädt...
                X