JavaScript:
// Offset eines Elements ermitteln
// Parameter: objElem - Objekt des Elements, dessen Offset bestimmt werden soll
// strDir - left = linkes Offset, sonst = oberes Offset
function getOffset(objElem, strDir){
// Startwert
var intOffsetParent = (strDir == "left")? objElem.offsetLeft : objElem.offsetTop;
// Elternelement mit Offset ermitteln
var objHelpOffset = objElem.offsetParent;
// Solange OffsetElemente existieren
while(objHelpOffset){
intOffsetParent += (strDir == "left")? objHelpOffset.offsetLeft : objHelpOffset.offsetTop; // Offset aufaddieren
objHelpOffset = objHelpOffset.offsetParent; // Nächstes OffsetElement
}
return intOffsetParent;
}
function sendData(objElem){
// Neues Bildobjekt erstellen und Daten per GET-Parameter übergeben
var objImg = new Image();
objImg.src = "xmlhttp_request_dummy.php?offx="+getOffset(objElem, 'left')+"&offy="+getOffset(objElem)+"&"+new Date().getTime();
}
xmlhttp_request_dummy.php:
<?php
// TODO: Datenbankroutinen, hier: Daten einfach an File anhängen
$hFile = fopen("testfile.txt", "a");
fwrite($hFile, date("d.m.y, H:i:s", mktime()) . " Uhr, Koordinaten: (" . $_GET['offx'] . ", " . $_GET['offy'] . ")\n");
fclose($hFile);
?>