Ingo: Frame scrollen

Das Script soll, wenn ich den Frame scrolle einen anderen Frame um den gleichen wert scrollen, aber irgendwie will das noch nicht so ganz.

Fehlermeldungen bekomme ich keine,
kann mir vielleicht jemand sagen, was daran nicht stimmt?

<script language="Javascript">
<!--
var start=window.pageYOffset;
function beidescroll ()
{
if (window.pageYOffset!= start)
 {
 var jetzt=window.pageYOffset;
 parent.leftFrame.scrollBy(0,jetzt);
 }
setTimeout ("beidescroll",100)
}

-->
</script>

  1. Hallo,

    pageYOffest ist ein Netscape spezifischer wert, im IE musst du document.body.scrollTop nehmen. Ich vermute mal es liegt dararn.

    Gruß

    ueps

    1. Hallihallo!

      Wenn ich den Quelltext richtig verstanden habe, dann sollte man vielleicht auch besser "scrollTo" statt "scrollBy" verwenden, sonst scrollt der linke Frame ja viel schneller als der Rechte.

      Oder seh ich das falsch?...

      Viele liebe und fragende Grüße,
      Der Dicki

      1. Hallihallo!

        Wenn ich den Quelltext richtig verstanden habe, dann sollte man vielleicht auch besser "scrollTo" statt "scrollBy" verwenden, sonst scrollt der linke Frame ja viel schneller als der Rechte.

        Oder seh ich das falsch?...

        Viele liebe und fragende Grüße,
        Der Dicki

      2. Hi,

        Wenn ich den Quelltext richtig verstanden habe, dann sollte man vielleicht auch besser "scrollTo" statt "scrollBy" verwenden, sonst scrollt der linke Frame ja viel schneller als der Rechte.

        Oder seh ich das falsch?...

        Nein, da hast du vollkommen recht. Das hab ich doch glatt übersehn ;-)

        scrollTo = absolute Angabe (da pageYOffset auch absolut ist)

        Gruß

        ueps

    2. Hallo,

      pageYOffest ist ein Netscape spezifischer wert, im IE musst du document.body.scrollTop nehmen. Ich vermute mal es liegt dararn.

      Gruß

      ueps

    3. Hallo,

      pageYOffest ist ein Netscape spezifischer wert, im IE musst du document.body.scrollTop nehmen. Ich vermute mal es liegt dararn.

      Gruß

      ueps

      Vielleicht, denn jetzt sagt er, dass ein Object fehlt in dieser Zeile:

      var start = document.body.scrollTop;

      1. Hi,

        Vielleicht, denn jetzt sagt er, dass ein Object fehlt in dieser Zeile:

        var start = document.body.scrollTop;

        Welchen Browser verwendest du denn?

        Du solltest auf alle Fälle eine Abfrage Reinamchen ob der Browser das Objekt kennt:

        if (window.pageYOffset) nimm pageYOffset
        if (document.body.scrollTop) nimm scrollTop

        Und dazu solltest du den Tipp vom Dickie noch beachten ;-)

        Gruß

        ueps

        1. Hi,

          Vielleicht, denn jetzt sagt er, dass ein Object fehlt in dieser Zeile:

          var start = document.body.scrollTop;

          Welchen Browser verwendest du denn?

          Du solltest auf alle Fälle eine Abfrage Reinamchen ob der Browser das Objekt kennt:

          if (window.pageYOffset) nimm pageYOffset
          if (document.body.scrollTop) nimm scrollTop

          Und dazu solltest du den Tipp vom Dickie noch beachten ;-)

          Gruß

          ueps

          Den Tipp habe ich schon beachtet und umgesetzt, in verwende den IE 6.0 und die Seite wird auch nur auf diesem Browser betrachtet, deswegen brauche ich keine Abfrage.

          1. Hi,

            Den Tipp habe ich schon beachtet und umgesetzt, in verwende den IE 6.0 und die Seite wird auch nur auf diesem Browser betrachtet, deswegen brauche ich keine Abfrage.

            OK, dann liegt es daran, das du mit deinem Script versuchst auf document.body zuzugreifen bevor der body existiert.

            Du Darfst erst bei geladenem Body deine JS Funktion starten.

            <script>
            function startjs()
            {
            var start = document.body.scrollTop;
            Aufruf_der_eigentlichen_Funktion();
            }

            </script>

            <body onload="startjs()">