1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2025-12-22 07:37:59 +01:00

first checkin of the new FF3-based genElemCoords

This commit is contained in:
Martin Stubenschrott
2007-08-28 13:28:52 +00:00
parent b450ac01c9
commit 2c48cc3dae

View File

@@ -92,38 +92,37 @@ function Hints() //{{{
function genElemCoords(elem) function genElemCoords(elem)
{ {
// NOTE: experiment for making the function faster, report problems // NOTE: experiment for making the function faster, report problems
// only works for FF3.0: var rect = elem.getClientRects()[0];
//var rect = elem.getClientRects()[0]; if (rect)
//if (rect)
//{
// elem.absoLeft = rect.left;
// elem.absoTop = rect.top;
//}
//return;
if (typeof(elem.validCoord) != "undefined")
{ {
if (elem.validCoord == elem.ownerDocument.validCoords) elem.absoLeft = rect.left;
elem.absoTop = rect.top;
}
return; return;
}
if (elem.offsetParent) //if (typeof(elem.validCoord) != "undefined")
{ //{
genElemCoords(elem.offsetParent); // if (elem.validCoord == elem.ownerDocument.validCoords)
elem.absoLeft = elem.offsetParent.absoLeft + elem.offsetLeft; // return;
elem.absoTop = elem.offsetParent.absoTop + elem.offsetTop; //}
}
else if (elem.offsetLeft && elem.offsetTop) // TODO: ugly and broken temporary fix until FF3 //if (elem.offsetParent)
{ //{
elem.absoLeft = elem.offsetLeft; // genElemCoords(elem.offsetParent);
elem.absoTop = elem.offsetTop; // elem.absoLeft = elem.offsetParent.absoLeft + elem.offsetLeft;
} // elem.absoTop = elem.offsetParent.absoTop + elem.offsetTop;
else //}
{ //else if (elem.offsetLeft && elem.offsetTop) // TODO: ugly and broken temporary fix until FF3
elem.absoLeft = 0; //{
elem.absoTop = 0; // elem.absoLeft = elem.offsetLeft;
} // elem.absoTop = elem.offsetTop;
elem.validCoord = elem.ownerDocument.validCoords; //}
//else
//{
// elem.absoLeft = 0;
// elem.absoTop = 0;
//}
//elem.validCoord = elem.ownerDocument.validCoords;
} }
function createHints(win) function createHints(win)