Boozo: Script funktioniert im IExplorer aber nicht in Firefox.

Hallo Forum..

Habe hier ein Script gefunden, welches allerdings nur im IExplorer funktioniert und nicht im Firefox. Meine Vermutung ist, dass es mit den event handlern zu tun hat. Das Script übergibt die Position des Scrollbalkens beim reload.

<script type="text/javascript">
function pageOffset(win)
{
    if(!win) win = window;
    var pos = {left:0,top:0};

if(typeof win.pageXOffset != 'undefined')
    {
         // Mozilla/Netscape
         pos.left = win.pageXOffset;
         pos.top = win.pageYOffset;
    }else{
         var obj = getBody(win);
         pos.left = obj.scrollLeft;
         pos.top = obj.scrollTop;
    }
    return pos;
}
function getBody(w)
{
return (w.document.compatMode && w.document.compatMode == "CSS1Compat") ? w.document.documentElement : w.document.body ||
null;
}
window.onload = function()
{
    if(Number(window.name)) // hat window.name einen Zahlenwert?
         window.scrollTo(0, window.name); // Wenn ja, dahin scrollen
    else window.name = 0;
}
</script>

Was muss ich ändern damit es auch im Firefox funktioniert? Über Vorschläge, Tipps oder Hinweise würde ich mich außerordentlich freuen und bedanke mich im Voraus für eure Mitarbeit.

Thanx und Grüße
Boozo

  1. Hallo Freunde des gehobenen Forumsgenusses,

    Habe hier ein Script gefunden, welches allerdings nur im IExplorer funktioniert und nicht im Firefox.

    "Funktioniert nicht" funktioniert nicht.
    Es fehlen Fehlermeldung (eines Gecko),
    Beschreibung der erwarteten Funktionalität
    und dessen, was stattdessen passiert ist
    und deine Versuche, das Problem zu beheben.

    Gruß
    Alexander Brock

    --
    [latex]\lim_{3 \to 4}{\sqrt{3}} = 2[/latex]
    1. Hallo..
      Erstmal danke für eure Antworten.

      "Funktioniert nicht" funktioniert nicht.

      Also "Funktioniert nicht" bedeute ganz einfach, dass das Script die Position des Scrollbalken beim reload im Firefox nicht übergibt. D.h. die Seite (der Scrollbalken) springt, nach einem reload nicht zur gescrollten Position zurück, sondern springt zum Ausgangspunkt, also nach ganz Oben.

      Das ist nur ein Teil eines Skriptes von mir, du musst auch den Wert setzen.

      Ich danke dir ersteinmal für das Script.
      Und du hast natürlich Recht, das Script habe ich nicht komplett gepostet. Mein Fehler, sorry. Aber auch komplett (so wie es mir vorliegt, s.u.) funktioniert das Script bei mir nur im IExplorer und nicht im Firefox.

      <script type="text/javascript">
      function pageOffset(win)
      {
          if(!win) win = window;
          var pos = {left:0,top:0};

      if(typeof win.pageXOffset != 'undefined')
          {
               // Mozilla/Netscape
               pos.left = win.pageXOffset;
               pos.top = win.pageYOffset;
          }
          else
          {
               var obj = getBody(win);
               pos.left = obj.scrollLeft;
               pos.top = obj.scrollTop;
          }
          return pos;
      }
      function getBody(w)
      {
          return (w.document.compatMode && w.document.compatMode == "CSS1Compat") ? w.document.documentElement : w.document.body || null;
      }
      window.onload = function()
      {
          alert(window.name);

      if(Number(window.name)) // hat window.name einen Zahlenwert?
               window.scrollTo(0, window.name); // Wenn ja, dahin scrollen
          else window.name = 0;

      }
      function on_scroll()
      {
      var s = pageOffset();
      window.name = s.top;
      window.status = window.name;
      }
      window.setInterval('on_scroll()', 250);
      // window.onscroll = on_scroll;

      </script>

      Danke nocheinmal für eure Mitarbeit.
      Grüße
      Boozo

      1. window.onload = function()
        {
            alert(window.name);

        if(Number(window.name)) // hat window.name einen Zahlenwert?
                 window.scrollTo(0, window.name); // Wenn ja, dahin scrollen
            else window.name = 0;

        }

        Wenn ich das alert() wegmache funktionert es bei mir.

        Struppi.

  2. Habe hier ein Script gefunden, welches allerdings nur im IExplorer funktioniert und nicht im Firefox. Meine Vermutung ist, dass es mit den event handlern zu tun hat. Das Script übergibt die Position des Scrollbalkens beim reload.

    Das ist nur ein Teil eines Skriptes von mir, du musst auch den Wert setzen.

    window.onload = function()
    {
        if(Number(window.name)) // hat window.name einen Zahlenwert?
             window.scrollTo(0, window.name); // Wenn ja, dahin scrollen
        else window.name = 0;
    }

    Den du hier abfragst.

    Struppi.