Nie ma natywnej funkcji na Element, aby uzyskać te współrzędne.
Oto wersja rzutkę z dnia jQuery.offset():
class Position {
num left, top;
Position(this.left, this.top);
}
Position offset(Element elem) {
final docElem = document.documentElement;
final box = elem.getBoundingClientRect();
return new Position(box.left + window.pageXOffset - docElem.clientLeft,
box.top + window.pageYOffset - docElem.clientTop);
}
Innym rozwiązaniem jest użycie jQuery.offset() poprzez js-interop:
Position jQueryOffset(Element elem) {
return js.scoped((){
final offset = js.context.jQuery(elem).offset();
return new Position(offset.left, offset.top);
});
}
Hi Alexandre , to byłoby doskonałe żądanie funkcji na dartbug.com/new :) –
Zrobione! http://dartbug.com/7267 –