Как я могу получить e.offsetX на мобильном/iPad

Не было смещения в e.touch [0], когда я пытался на iPad. Кто-нибудь знает, где я могу получить это значение offsetX?

Ответ 1

Вы можете использовать clientX или pageX, см. здесь

Ответ 2

Правильный ответ основан на комментариях в предлагаемом ответе:

e.offsetX = e.touches[0].pageX - e.touches[0].target.offsetLeft;     
e.offsetY = e.touches[0].pageY - e.touches[0].target.offsetTop;

Это игнорирует любые преобразования, такие как вращение или масштабирование. Также убедитесь, что есть какие-либо прикосновения.

Ответ 3

Имел аналогичную проблему при привязке обработчика событий с помощью функции jQuery .on на элементе canvas (не знаю причины).

Я разрешил его, привязывая обработчик событий, используя addEventListener. Объект event в обработчике имеет offsetX и offsetY, определенные с соответствующими значениями.

Надеюсь, что это поможет...