Fraenk: Layer "scrollen" NN nach resize Layer nichr mehr ansprechbar!

Hallo,

mir schwirrt der Kopf. Ich habe das Forums-Archiv von vorne nach hinten durchwühlt, aber steig nicht durch!
Folgendes Problem:

Ich habe zwei Frames:
1. Frame: Layer "TEST" mit Textinhalt+Tabelle
2 .Frame: Grafik mit JavaScriptaufruf zum scrollen(bewegen) von Test

Alles klappt soweit, aber nach einem resize ist TEST in NN nicht mehr ansprechbar! Wie mache ich den wieder flott?
Vor allem in einem anderen Frame? Zum bessen Verständnis das Script:

var timer = null;
var timer_running = false;

function scroll_dn()
{ var version = parseFloat(navigator.appVersion);

if(!timer_running)
  return

if (navigator.appName.indexOf('Netscape') != -1)   
{    	if (version >= 4.0 && (top.content.document.TEST.clip.height)\*-1  < (top.content.document.TEST.pageY-100 ))  

{ top.content.document.TEST.pageY = (top.content.document.TEST.pageY-8 )
  }
}
else if (navigator.appName.indexOf('Microsoft') != -1)
{  if (version >= 4.0)
  { top.content.scroll(0,top.content.document.body.scrollTop+16);
  }
}

timer = window.setTimeout("scrolldn()", 50)  

}

function scroll_up()
{ var version = parseFloat(navigator.appVersion);

if(!timer_running)
  return

if (navigator.appName.indexOf('Netscape') != -1)
{     if (version >= 4.0 && top.content.document.TEST.pageY<0 )
  { top.content.document.TEST.pageY = (top.content.document.TEST.pageY+8 )
  }
}
else if (navigator.appName.indexOf('Microsoft') != -1)
{  if (version >= 4.0)
  { top.content.scroll(0,top.content.document.body.scrollTop-16);
  }
}

timer = window.setTimeout("scroll\_up()", 50)  

}

function stopscr()
{
if(timer) window.clearTimeout(timer);
timer_running = false;
timer = null;
}

function startup()
{
timer_running = true;
scroll_up();
}

function startdn()
{
timer_running = true;
scroll_dn();
}

Vielen Dank im Voraus!
Fraenk

  1. Hallo Fraenk

    Alles klappt soweit, aber nach einem resize ist TEST in NN nicht mehr ansprechbar! Wie mache ich den wieder flott?
    Vor allem in einem anderen Frame? Zum bessen Verständnis das Script:

    Das ist ein alter Bug im NN. Da hilft nur ein Neuladen der Seite.

    Hier das passende Script zum Reloaden:

    <script language="JavaScript">
    <!--
                         /*Ueberwachung Netscape Navigator*/
    /**
    * resize.js 0.3 970811
    * by gary smith
    * js component for "reloading page onResize"
    */

    if(!window.saveInnerWidth)
      {
       window.onresize = resize;
       window.saveInnerWidth = window.innerWidth;
       window.saveInnerHeight = window.innerHeight;
      }

    function resize()
    {
    if (saveInnerWidth < window.innerWidth saveInnerWidth > window.innerWidth
         saveInnerHeight > window.innerHeight saveInnerHeight < window.innerHeight)
    {
    window.history.go(0);
    }
    }

    //-->
    </script>

    eventuell gesetzte Variablen gehen aber verloren. Abhilfe dagegen: diese im Fensternamen speichern, der bleibt erhalten.

    Viele Grüße

    Antje

    1. Hallo Antje,

      vielen Dank für den Hinweis. Könntest Du mir noch einen kleinen Tipp geben, wo ich das Script einbauen
      muss?
      In einem der Frames oder im Parent-Window?

      Ein Anmerkung noch von mir: Daten in Formularfeldern sind auch resistent gegen reload und sogar
      beim Seitenwechsel (andere URL)!
      D.h. man kann noch einen dritten Frame mit der Höhe 0 Pixel einbauen und und dort die Variablen
      in einem Formularfeld zwischenparken.

      Viele Grüße und nochmals Danke!

      Fraenk

      1. Hallo Fraenk,

        vielen Dank für den Hinweis. Könntest Du mir noch einen kleinen Tipp geben, wo ich das Script einbauen
        muss?
        In einem der Frames oder im Parent-Window?

        jetzt hast du mich erwischt :-)
        Mit Frames arbeite ich so gut wie nie, deshalb keine genaue Auskunft geben.
        So aus den Gefühl heraus würde ich sagen, nimm das Parent-Window.
        Ich würde es an deiner Stelle einfach austesten.

        Ein Anmerkung noch von mir: Daten in Formularfeldern sind auch resistent gegen reload und sogar
        beim Seitenwechsel (andere URL)!
        D.h. man kann noch einen dritten Frame mit der Höhe 0 Pixel einbauen und und dort die Variablen
        in einem Formularfeld zwischenparken.

        Werde ich mir merken. Dabei fällt mir ein, in irgendeinem Teil meiner Seite habe ich genau deshalb sogar ein Reset der Formulare in das Reloadscript eingebaut. Nur die Schlußfolgerung, auf die du mich hinweist, habe ich nicht gezogen. Na man lernt eben nie aus.

        Viele Grüße

        Antje