Jens Menke: NC 4.05 und window.location .. arghhhh

Arghhhhh

Sorry aber bin genervt....
hab ne umleitung via JavaScript geschrieben die so aussieht :

str="/Drizzt/index.htm?url="+self.location; window.location=str;

funzt mit IE un Netscape 4.5 , 4.6 problemlos
aber nu hab ich mitbekommen das Netscape 4.05 dabei
folgenden Fehler bringt :
window.location is read-only !!
die Seiten liegen aber wohlbemerkt auf dem gleichen
Server ..
Hat jemand da zufällig noch ein workaround zu ???

Achja.. und denn gibts noch das Problem das Netscape
ja wenn man Layer einblendet die über die aktuelle
Fenstergrösse gehen keine Scrollbars erstellt..
also muss man was wie

window.scrollTo(0,0);
document.height = height + counterheight;

machen...

4.05 interpretiert das allerdings auch gleich wieder
im Gegensatzt zu allen anderen Browsern als resize...
wenn man also bei resize alle Elemente neu berechnet um den Counter
wieder unten an der Seite anzusiedeln wird die resize
Funktuion bei 4.05 auch dan schon aufgerufen wenn man
nur ne Scrollbar erzeugen will...

was ich nur sagen wollte.. ich hasse diesen Browser..
aber ich muss mir wohl nun auch ncoh 4.05 neben 4.6
weiterhin auf der Platte halten.. nur um gegen solchen
Unfug Lösungen zu finden.....

gruss

ein nicht mehr ganz nüchterner , und daher seinem Frust
freien Lauf lassender

Jens

  1. Moin!

    str="/Drizzt/index.htm?url="+self.location; window.location=str;
    aber nu hab ich mitbekommen das Netscape 4.05 dabei
    folgenden Fehler bringt :
    window.location is read-only !!

    Fuer gewoehnlich verwendet man ja auch window.location.href fuer sowas. window.location ist schliesslich ein Objekt, und zugegriffen werden sollte eigentlich nur auf dessen Eigenschaften (href eben). Dass es ab Netscape 4.0? trotzdem funktioniert (mit 4.08 geht's auch), ist recht verwunderlich. Vielleicht haben sie sich ja sowas wie "Default-Eigenschaften" einfallen lassen, d.h. ein Zugriff auf window.location wird defaultmaessig an window.location.href weitergeleitet. Muesste man mal in der JS Doku nachschauen.

    window.scrollTo(0,0);
    document.height = height + counterheight;

    4.05 interpretiert das allerdings auch gleich wieder
    im Gegensatzt zu allen anderen Browsern als resize...
    wenn man also bei resize alle Elemente neu berechnet um den Counter
    wieder unten an der Seite anzusiedeln wird die resize
    Funktuion bei 4.05 auch dan schon aufgerufen wenn man
    nur ne Scrollbar erzeugen will...

    Was hat denn das mit resize zu tun? Wie genau aeussert sich das denn? Aus Deinen Ausfuehrungen werde ich nicht so recht schlau. Welche resize-Funktion wird aufgerufen? Meinst Du vielleicht einen Eventhandler?

    was ich nur sagen wollte.. ich hasse diesen Browser..

    Tja ja, so ist das. Ich hasse Spinnen, auch schoen was? *g*

    Bye by Calocybe

    1. Fuer gewoehnlich verwendet man ja auch window.location.href fuer sowas. window.location ist schliesslich ein Objekt, und zugegriffen werden sollte eigentlich nur auf dessen Eigenschaften (href eben). Dass es ab Netscape 4.0? trotzdem funktioniert (mit 4.08 geht's auch), ist recht verwunderlich. Vielleicht haben sie sich ja sowas wie "Default-Eigenschaften" einfallen lassen, d.h. ein Zugriff auf window.location wird defaultmaessig an window.location.href weitergeleitet. Muesste man mal in der JS Doku nachschauen.

      Ahchja.. das mit href hatte ich auch probiert.. da kam
      denn aber : illegal URL method wegen index.htm?ttp://...
      daher hab ichs denn mit allen anderen möglichkeiten
      durchprobiert..

      aber mit
      str="/index.htm?url="+self.location.href.replace("http://"+window.location.hostname,"");
        window.location.href=str;

      scheints denn auch der 4.05 zu tun.. *ächz*

      Was hat denn das mit resize zu tun? Wie genau aeussert sich das denn? Aus Deinen Ausfuehrungen werde ich nicht so recht schlau. Welche resize-Funktion wird aufgerufen? Meinst Du vielleicht einen Eventhandler?

      Hm.. das verständlich zu formulieren würde vermutlich
      in schriftlicher Form 5 Stunden dauern.. ich grübel da
      lieber selbst erstmal noch über ne andere Lösung ... und
      deaktiviere solange die Counter-neupositonierung beim
      resize..

      danke trotzdem :)

      gruss
      Jens

  2. Arghhhhh

    Sorry aber bin genervt....
    hab ne umleitung via JavaScript geschrieben die so aussieht :

    str="/Drizzt/index.htm?url="+self.location; window.location=str;

    das ist meine lieblings framegenerator version. sie funzt ohne replace und deswegen auch mit den 3.0lern:
    sie erwarte jedoch das sie mit einer url angabe hinter dem fragezeichen aufgerufen wird. z.b. von einer index seite die javascript und plugins checkt.

    <script language="JavaScript">
    if ( window.location.href.lastIndexOf('?')  < 1 ) { alert("Stop");
                                                            window.location.href = "splash.html"; }
    </script>
    </head>
    <script language="JavaScript">
    document.writeln('<frameset rows="50,87%,50" border="0" framespacing="0" cols="*">');
    document.writeln('<frame src="nav-oben.html" name="ganzoben" marginheight="0" marginweidth="0" scrolling="NO" frameborder="NO">');
    document.writeln('<frame src="'+window.location.href.substring(window.location.href.lastIndexOf('?')+1,window.location.href.length)+'" name="oben" marginheight="0" marginweidth="0" frameborder="NO">');
    document.writeln('<frame src="mcontroll.html" name="bottom" marginwidth="0" marginheight="0" scrolling="NO" frameborder="NO">');
    document.writeln('<noframes>');
    document.writeln('</noframes></frameset>');
    </script>
    <body bgcolor="#FFFFFF">
    :
    :(no java script)
    :

    die seite wird aufgerufen mit:
    <script language="JavaScript">
    // Mal kucke  sind wir top ?
    if (self.location == top.location) {
    window.location.href ="../mainframegenerator.html?"+window.location.pathname
    }
    // well this shold do the job
    </script>

    funkt prima . nun kann man auf alle unterseiten bookmarks setzen und das framset baut sich wieder auf.