knirsch: Scrollen einer Seite im Firefox

Hallo zusammen,

ich habe folgendes Problem mit meinen Firefox 3.0.17:

Ich habe eine Seite, die scrollt, wenn sie größer als das Fenster ist. Lade ich die Seite direkt aus dem Verzeichnis (/var/www/scrollen.htm), klappt alles wunderbar. Lade ich die Seite über den Apache (192.168.100.1/scrollen.htm), dann scrollt sie nicht.

Vielen Dank für die Hilfe

Grüße Knirsch

  1. Liebe(r) knirsch,

    Lade ich die Seite

    ...in welchem Browser?

    Liebe Grüße,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
    1. Hallo Felix!

      Lade ich die Seite
      ...in welchem Browser?

      Hm, steht das nicht sowohl im Beitragstitel als auch in der Einleitung des OP:

      ich habe folgendes Problem mit meinen Firefox 3.0.17:

      ?

      Viele Grüße aus Frankfurt/Main,
      Patrick

      --
      _ - jenseits vom delirium - _

         Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
      Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
      1. Lieber Patrick,

        Lade ich die Seite
        ...in welchem Browser?

        Hm, steht das nicht sowohl im Beitragstitel als auch in der Einleitung des OP

        stimmt. Ich sollte wohl ins Bett.

        Liebe Grüße,

        Felix Riesterer.

        --
        ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
  2. Hi,

    Lade ich die Seite direkt aus dem Verzeichnis (/var/www/scrollen.htm), klappt alles wunderbar. Lade ich die Seite über den Apache (192.168.100.1/scrollen.htm), dann scrollt sie nicht.

    Hast du HTML und CSS bereits validiert?

    MfG ChrisB

    --
    “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
    1. Hallo ChrisB

      Hast du HTML und CSS bereits validiert?

      Nein. Kannst Du mir vielleicht sagen, wo dies möglich ist.

      Grüße
      knirsch

      1. Hi,

        Hast du HTML und CSS bereits validiert?

        Nein. Kannst Du mir vielleicht sagen, wo dies möglich ist.

        http://validator.w3.org/
        http://jigsaw.w3.org/css-validator/

        MfG ChrisB

        --
        “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
      2. Hallo ChrisB

        Hast du HTML und CSS bereits validiert?

        Nein. Kannst Du mir vielleicht sagen, wo dies möglich ist.

        Gerade erledigt. Er gibt mir zwar 4 Fehler an, die ich noch kontrollieren muss.

        Grüße
        knirsch

      3. Hallo ChrisB,

        ich habe es nun validiert. Er meldet 2 Fehler:

        1. Doctype ist nicht angegeben und deshalb
        2. <body> wäre hier nicht erlaubt

        Jetzt wird diese Seite aber von einer anderen aufgerufen. Sie dient nämlich nur für die Bereitstellung des Scrollens mit Hilfe von Javascript.

        Grüße
        knirsch

        1. Hi,

          Jetzt wird diese Seite aber von einer anderen aufgerufen.

          Definiere „aufrufen“.

          Sie dient nämlich nur für die Bereitstellung des Scrollens mit Hilfe von Javascript.

          Dass JavaScript im Spiel ist, und zwar wesentlich auf das, was problematisch ist - nämlich das Scrolling - bezogen - das erwähnst du jetzt erst ...?

          Felix bat dich zwar vielleicht aus dem falschen Grund, die Tipps für Fragende zu lesen - aber ich schlage vor, das machst du jetzt trotzdem noch mal.

          MfG ChrisB

          --
          “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
          1. Hallo ChrisB,

            Da die Seite(n) bei direktem Aufruf von der Festplatte genau das tun, was sie sollen, habe ich das Problem weniger auf das Java Script geschoben als auf den FF.

            Hier nun alles von vorne:

            Von einem Kollegen habe ich zur Anzeige von Mitteilungen (täglich ändernde und längerfristige) folgende HTML-Seiten bekommen:

            1. Start.html
            Sie erzeugt zwei Frames. Einen für die täglichen Mitteilungen (subframe.htm) und einen für die längerfristigen (mitteilung.htm).

            <html>  
            <meta http-equiv="refresh" content="600; URL=START.HTML">  
              
            <head>  
            <title>Anzeige</title>  
            </head>  
            <frameset rows="*,1" framespacing="0" frameborder="0" border="0">  
            <frame src="subframe.htm" scrolling="no" noresize>  
            <frame src="mitteilung.htm" scrolling="no" noresize>  
            </frameset>  
            </html>
            

            2. subframe.htm
            Diese Seite dient zum Aufruf der Seite heute.htm, die automatisch mit Überschrift+Datum und Inhalt erzeugt wird.
            Hier werden wieder drei Frames erzeugt. Der 1. Frame zeigt die Überschrift von heute.htm an. Der 2. Frame dient zum anzeigen der Meldungen, die gescrollt werden sollen, und der 3. Frame zum Laden der Datei scroller.htm.

            <html>  
            <head>  
            <title>Anzeige</title>  
            </head>  
            <frameset rows="145,*,1" framespacing="0" frameborder="0" border="0">  
            <frame src="heute.html" scrolling="no" noresize>  
            <frame src="heute.html" scrolling="no" noresize name="frame">  
            <frame src="scroller.htm" scrolling="no" noresize>  
            </frameset>  
            </html>
            

            3. scroller.htm
            Sie dient zum Scrollen des Inhaltes der Datei heute.htm. Hier steckt auch der Java Script Code.

            <html>  
            <head>  
            <title>Anzeige Scroller</title>  
              
            </head>  
              
            <script language="JavaScript">  
              
            var h1 = window.parent.frame.document.body.scrollHeight;  
            var h2 =  739 /*window.parent.frame.document.body.offsetHeight; Der Befehl funktioniert im FF nicht korrekt, deshalb fester Wert*/  
            var timeout;  
            var y;  
            var p = 145/*  Pixelhöhe der Überschrift - siehe subframe.htm */  
            var step = 1; /* Anzahl der Pixel die gescrollt werden */  
              
            function start() {  
            stop();top();setTimeout("scrolldown()",2500);  
            }  
              
            function stop() {  
            clearTimeout(timeout);  
            }  
              
            function top() {  
            window.parent.frame.scroll(0,p);  
            y = p;  
            }  
              
            function scrolldown() {  
            if (y < p) {  
             y = p;  
             }  
            window.parent.frame.scroll(0,y);  
            y = y + step;  
            if (y < h1 - h2) {  
             timeout=setTimeout("scrolldown()",30); /* Verzögerung beim Scrollen (ms) */  
             }  
            else {  
             stop();setTimeout("scrollup()",6000); /* Wartezeit OBEN (ms) */  
             }  
            }  
              
            function scrollup() {  
            window.parent.frame.scroll(0,y);  
            y = y - step;  
            if (y > p) {  
             timeout=setTimeout("scrollup()",30); /* Verzögerung beim Scrollen (ms) */  
             }  
            else {  
             stop();top();setTimeout("scrolldown()",4000); /* Wartezeit UNTEN (ms) */  
             }  
            }  
              
            </script>  
              
              
            <body onload="start()"></body>  
              
            </html>
            

            Vielleicht kann man das Alles auch etwas einfacher Stricken.

            Grüße
            knirsch