вам его ни кто не навязывает - jquery это кроссбраузерный вариант.
offset в данном случае - проверенное решение
То что у вас нет в коде jq я заметил, не нужно так остро реагировать. Ни кто не мешает вам писать код самому
function ElemCoords(obj)
{
var curleft = 0;
var curtop = 0;
if (obj.offsetParent)
{
while (1)
{
curleft += obj.offsetLeft;
curtop += obj.offsetTop;
if (!obj.offsetParent)
break;
obj=obj.offsetParent;
}
}
else if (obj.x || obj.y)
{
curleft += obj.x;
curtop += obj.y;
}
return {"x":curleft, "y":curtop};
}
http://javascript.ru/ui/offset