Javascript:currentStyle/getComputedStyle

  • Heu zusammen. Ich such mir schon seit ner Ewigkeit einen Wolf... hab aber noch nichts brauchbares gefunden.

    Also. Jeder kennt ja die currentStyle/getComputedStyle-Attribute/Methode, mit denen man in Javascript ein Element abfragen kann. Auch zu Werten, die man selbst nicht gesetzt hat. In den meisten Fällen sind die Rückgaben sehr eindeutig und nützlich. Aber manchmal auch einfach nur mist, weil man das Format nicht speziell nachfragen kann. Bzw. ich kann das nicht und hoffe jemand kennt den Trick dafür.

    Kurzes Beispiel was ich meine.

    Gegeben ist das hier:
    (ich nehm mal die IE-schreibweise weil kürzer ^^)

    Code
    <img src="irgendeinbild.jpg" alt="ein bild" onload="alert(this.currentStyle.width);">


    Ergebnis ist "auto". Ein absolut gültiger Rückgabewert mit quasi null Wert.
    Denn das Bild ist vielleicht 100 x 100 Pixel und das würde ich gerne Erfahren. Evtl. ist die Rückgabe auch in %, weil so mal angegeben. Da könnte man dann noch umständlich über die Nest-Elemente evtl. die Pixel-Größe herausrechnen. Aber einfacher wäre es schlicht, ich könnte das Rückgabeformat vorgeben. Also sowas wie:

    Code
    getInFormat(this.currentStyle.width, "px");


    Irgendwer ne Idee?

  • Ja. Also bei dem img-Beispiel wo ich jetzt gemacht hab, müsste das sogar gehen. Insofern ein schlechtes Beispiel. Bei anderen Elementen wie Div's existiert das Problem aber:

    Code
    <div onclick="alert(this.width);">lalala</div>
    <div onclick="alert(this.offsetWidth);">lalala</div>