Javascript ist Toll!

FAQ > Javascript

3. Februar 2006 - 11:00

Position eines Elementes ermitteln

Die Position und die Maße eines HTML Elementes, lassen sich mit folgender Funktion bestimmen:

javascript
function getRect (o){
    var r = { top:0, left:0, width:0, height:0 };
 
    if(!o) return r;
    else if(typeof o == 'string' ) o = document.getElementById(o);
 
    if( typeof o != 'object' ) return r;
 
    if(typeof o.offsetTop != 'undefined')    {
         r.height = o.offsetHeight;
         r.width = o.offsetWidth;
         r.left = r.top = 0;
         while (o && o.tagName != 'BODY')         {
              r.top  += parseInt( o.offsetTop );
              r.left += parseInt( o.offsetLeft );
              o = o.offsetParent;
         }
    }
    return r;
}

Funktionsweise

Der Funktionsparameter kann wahlweise eine bereits ermittelte Objektreferenz auf ein HTML Element sein oder ein String, der die ID eines Objektes darstellt. Der Rückgabewert ist ein Objekt mit den vier Attributen: left, top, width, height.

Ähnliche Artikel

  • No Related Post
Comments (8)
6862 mal gelesen.

8 Comments

Einen Kommentar hinterlassen »

Kommentare

1. von karl123
Sonntag 5.März 2006: 17:31

Hallo Struppi,

ich habe das Script einmal ausprobiert: es funktioniert bei IE6 und Opera 8 perfekt, bei den Gecko-Browsern (Mozilla Firefox 1) aber nicht. Dort passiert garnichts.

Hier mein Testprogramm:

[.... HTML Code gelöscht ...]

Karl

2. von karl123
Sonntag 5.März 2006: 18:29

Hallo Struppi,

sieht so aus, als wenn der Quellcode nicht dargestellt wird.
Ich habe ihn daher auf meiner Webseite unter "Problemfälle" dargestellt.

Karl

3. von Struppi
Montag 6.März 2006: 08:10

Das Skript würde funktionieren, ich erhalte aber eine Fehlermeldung:

Fehler: xtr has no properties
Quelldatei: ....

Deine Abfrage nach dem Objekt scheint nicht ok zu sein.

4. von fester_franz
Montag 6.März 2006: 10:33

Hallo Struppi,

Vieln Dank für dieses geniale Skript, das hat mir viel Zeit gespart...

fester_franz

5. von steve
Montag 14.August 2006: 03:04

maozilla-browser koennen mit der uebergeben
objekt-referenz nix anfangen. ich bin daher
den weg der uebergabe einer element-id und resultierend die referenzierung mit hilfe
von "objRef = getElementById(varRefID)". mozilla >= 1 verstehts...regards steve

6. von Struppi
Montag 14.August 2006: 10:25

Die Mozillabrowser, die ich benutze können sehr wohl etwas mit einer Objektreferenz anfangen.

7. von vtiger
Dienstag 9.März 2010: 13:42

super script... vielen dank an alle helfer
grüsse

8. von lemmmi
Sonntag 6.Mai 2012: 09:25

Danke... :-)

Einen Kommentar hinterlassen

Name (erforderlich)
Mail (wird nicht angezeigt) (erforderlich)
Website

Folgende HTML Tags sind erlaubt: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>



Powered by WordPress Stop Spam Harvesters, Join Project Honey Pot kostenloser Counter Browser-Statistiken
rats-wonderful
rats-wonderful
rats-wonderful
rats-wonderful