Свойство offset
Координаты указателя мыши в координатах целевого узла.
Это значение может отличаться между платформами, если целевой узел перемещается после срабатывания события или если элемент имеет CSS-трансформации, влияющие на него.
Реализация
Point get offset {
if (JS('bool', '!!#.offsetX', this)) {
var x = JS('int', '#.offsetX', this);
var y = JS('int', '#.offsetY', this);
return new Point(x as num, y as num);
} else {
// Firefox does not support offsetX.
if (!(this.target is Element)) {
throw new UnsupportedError('offsetX is only supported on elements');
}
Element target = this.target as Element;
var point = (this.client - target.getBoundingClientRect().topLeft);
return new Point(point.x.toInt(), point.y.toInt());
}
}
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-html/MouseEvent/offset.html