Есть ли способ API блокировки указателя восстановить курсор в его естественное положение после разблокировки?Javascript

Форум по Javascript
Ответить
Anonymous
 Есть ли способ API блокировки указателя восстановить курсор в его естественное положение после разблокировки?

Сообщение Anonymous »

Я реализую взаимодействие перетаскивания, которое должно продолжаться, когда указатель покидает окно браузера, поэтому я использую события указателя с `setPointerCapture()` и, в некоторых случаях, API блокировки указателя.
Во время блокировки указателя я отслеживаю относительное движение (

Код: Выделить всё

movementX
/ motionY) для конкретных взаимодействий (здесь это не имеет значения) и может точно вычислить, где бы находился курсор, если бы не была применена блокировка указателя (мне она нужна, но на всякий случай сообщу вам).
Однако, когда блокировка указателя снимается, системный курсор снова появляется в той позиции, где началась блокировка, а не в позиции, подразумеваемой фактическим движением пользователя.
Я не пытаюсь установить произвольную позицию курсора или переопределить намерение пользователя — целевая позиция полностью определяется пользовательским вводом, пока она заблокирована.
Мой вопрос:
  • Есть ли какой-либо способ (текущий или предлагаемый), позволяющий API блокировки указателя восстанавливать курсор в его «естественное» положение на основе накопленного движения?
  • Или какой-либо механизм (флаг, опция или рекомендуемый) шаблон), который позволяет браузеру размещать курсор там, где он находился бы без блокировки указателя?
Сам по себе захват указателя не решает эту проблему, поскольку он по-прежнему оставляет окончательное размещение курсора неизменным, а блокировка указателя обеспечивает относительное перемещение, но не контролирует восстановление курсора.
Это намеренно невозможно из-за ограничений платформы или это обсуждалось в спецификациях или проблемах браузера как потенциальное улучшение?
Протестированные браузеры: Chromium, Firefox, qutebrowser.

Подробнее здесь: https://stackoverflow.com/questions/798 ... al-positio
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»