HTML DOM drag-n-drop: что относительно того, когда мышь оставляет окно?

Я работаю над веб-приложением, где я поддерживаю медленное движение страницы путем простого наблюдения за mousedown/mousemove/mouseup событиями. Та часть работает отлично.

Проблема состоит в том, что я только обрабатываю перетаскивание в одном конкретном элементе дизайном, и если пользователь (случайно или не) перетаскивает снаружи, это вовлекает в режиме перетаскивания. Таким образом, мышь вниз, затем листовое окно мыши, затем мышь, затем возвраты мыши к окну похожи, это все еще перетаскивает к моему приложению.

Я не выяснил способа решить это - даже что-то простое как, "когда мышь повторно вводит окно, кнопка мыши вниз?" работал бы.

Такая функциональность существует, и я просто пропускаю ее? Или есть ли некоторое умное обходное решение, которое я могу использовать здесь?

Поддержка прежней версии не имеет никакой важности для меня - если это - решение HTML5, которое только работает в FF3.5/Chr4/Sf4, я доволен этим.

7
задан Ken 6 March 2010 в 21:08
поделиться

1 ответ

Что, если бы у вас было событие onmouseout элемента, запускающее событие mouseup?

Если вы просто используете встроенные обработчики, что-то вроде:

<div id='dragElement' onmouseup='alert("stop dragging!")' onblur='this.onmouseup();'></div>

добавлено к любому коду обработки событий, который вы уже используете. Это «освободит» перетаскивание всякий раз, когда элемент теряет фокус. Не самый чистый код, но идею вы поняли.

1
ответ дан 7 December 2019 в 16:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: