stephan: onresize und Firefox

Ich habe ein Problem mit "onresize" unter Firefox.
Aufgerufen wird "onresize" in einem Objekt um die Grösse eines Div-Elementes zu ermitteln. Diese Grösse soll beim verändern der Seitegrösse an ein weiteres DIV übergeben werden, was auf Pixelwerte angewiesen ist.
Das Objekt wird von einer externen JS-Datei aufgerufen.

Mit dem IE funktioniert onresize ohne Probleme, Firefox ruft diese Funktion nur einmal beim laden der Seite auf. Danach tut sich nix mehr.
In dem Beispiel der Selfhtml-Bibliothek das gleiche Problem.

Nun habe ich etwas gegoogelt und ein Beispiel gefunden, das auch bei mir im Firefox funtioniert. Allerdings kann ich keinen Unterschied finden.
Ich habe schon an den HTML-Definitionen und Metatags rumgeschraubt, ohne Erfolg.

Modell:

Objekt
{
  function do()
  {
    alert('done');
  }

window.onresize = this.do();
}

ME = new Object();

Weis jemand etwas über Einschränkungen beim Einsatz von "onresize" im Firefox?

Danke

Stephan

  1. Hi,

    Objekt
    ME = new Object();

    k != c

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. Objekt
      ME = new Object();

      k != c

      Was ist nicht was?
      Was meinst du damit?

      1. hi,

        Objekt
        ME = new Object();

        k != c

        Was ist nicht was?

        ein k ist kein c.
        es sind beides buchstaben aus dem lateinischen alphabet, wie es hierzulande geläufig ist - aber eben _unterschiedliche_ buchstaben.

        Was meinst du damit?

        das war ein von andreas in bewegung gesetzter zaunpfahl.

        vergleiche doch oben noch mal die schreibweisen von obje*t.

        gruß,
        wahsaga

        --
        "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
        1. Blindfisch, ich!
          Aber das ist nicht das Problem, war ja nur eine Skizze.
          Na gut, hier mal etwas Code:

          ///Auszug
          function JS_SCROLLBAR()
          {
           this.index_x;
           this.index_y;
           this.target;
           this.move;

          this.init = init;
           this.getRealNumber = getRealNumber;
           this.dragPointer = dragPointer;
           this.startDrag = startDrag;
           this.stopDrag = stopDrag;
           this.trace = trace;
           this.scaleScrollbalken = scaleScrollbalken;
           this.dragPointerIE = dragPointerIE;
           this.ObjIndex = ObjControl.setObj(this);
          }

          ///Diese Funktion soll bei "onresize" aufgerufen werden
           function scaleScrollbalken()
           {
            alert('running');
           }

          //wird beim laden einer Seite in dem IFrame aufgerufen
           //1. findet den Überlauf einer Seite herraus
           //2. entscheided ob der Scrollbalken sichtbar sein muss
           //3. passt die Grösse des Scrollbalken an den Überlauf des            Dokuments an
           //4. setzt die Scrollbalkenposition auf Null, also nach oben
           function init(obj, scroller, balken)
           {

          --------------> window.onresize = this.scaleScrollbalken();
            if(this.everSeen != 0 && this.everSeen != 1)
            {
             if(scroller.style.visibility == 'visible')
             {
              this.everSeen = 1;
             }else{
              this.everSeen = 0;
             }
            }
            obj.scrollTo(0,100000);
            if(obj.pageYOffset)
            {
             scroller.style.height = document.all.frame_1.offsetHeight;
             this.index_x = obj.pageXOffset;
             this.index_y = obj.pageYOffset;
            }else{
             scroller.style.height = obj.innerHeight;
              this.index_y = obj.document.body.scrollTop;
             this.index_x = obj.document.body.scrollLeft;
            }
            obj.scrollTo(0,0);

          if(this.index_y == 0 && this.everSeen == 0)
            {
             scroller.style.visibility = 'hidden';
            }else{
             scroller.style.visibility = 'visible';
            }

          if(this.pointer)
            {
             this.pointer.style.top = 0;
            }

          tmpHeight = Number(this.getRealNumber(scroller.style.height));
            if(navigator.appName == 'Netscape')
            {
             balken.style.height = (tmpHeight/100)*(tmpHeight/((tmpHeight+this.index_y)/100));
            }else{
             balken.style.height = (tmpHeight/100)*(tmpHeight/((tmpHeight+(this.index_y-328))/100));
            }
           }

      2. Hi,

        Objekt
        ME = new Object();
        k != c
        Was ist nicht was?
        Was meinst du damit?

        Warum wohl hab ich genau die beiden Zeilen Deines Postings zitiert und nicht irgendwelche anderen?

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.