Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   dragleave работает как mouseout, а не mouseleave? (https://javascript.ru/forum/events/41449-dragleave-rabotaet-kak-mouseout-ne-mouseleave.html)

cyber 17.09.2013 13:44

danik.js, а ну так если проблема только в fromPoint, то вот document.elementFromPoint – a jQuery solution

danik.js 17.09.2013 14:10

НЕЕЕТ!!! Проблема в том что в опере координаты неправильные при выходе за границы окна. Они не уходят в минус при движении мыши вверх/влево и не становятся больше ширины/высоты окна при движении впрапво/вниз.

cyber 17.09.2013 14:29

danik.js, в какой версии оперы ковыряешь ? (вечером посижу , попробую что то придумать )

danik.js 17.09.2013 14:53

12.14

devote 17.09.2013 15:30

danik.js,
не совсем я понял твоей проблемы в опере. Можешь пример привести?
ну что-то типо:
<!DOCTYPE html>
<html>
	<head>
	<script>
		document.onmousemove = function(e) {
			document.body.children[0].innerHTML = e.pageX + 'x' + e.pageY;
		}
	</script>
	</head>
	<body>
		Вдави мышь в пол(документ) и веди курсор проч(за пределы)
		<div></div>
	</body>
</html>

danik.js 17.09.2013 17:10

В общем способ с elementFromPoint не подходит. Он не учитывает возможность отмены операции drag'n'drop (через Esc например). При отмене произойдет событие dragleave, но мышь останется над дроп-зоной.
К тому же в webkit/blink тоже проблемы с координатами (хотя вроде скрипт работал корректно, не пойму чета).
Остаются вариант со счетчиком и вариант с накрыванием элемента оверлеем, защищающим от множественного срабатывания событий.

cyber 17.09.2013 17:12

Цитата:

Сообщение от danik.js
В общем способ с elementFromPoint не подходит. Он не учитывает возможность отмены операции drag'n'drop (через Esc например).

danik.js, а событие dragend ?

danik.js 17.09.2013 17:17

А dragend не всегда есть. Притащить могут ведь и извне.


Часовой пояс GMT +3, время: 23:09.