Сначала ответьте:
Есть ли способ получить текущую позицию мыши на странице, используя прослушиватель событий для прокрутки?
см. Определение события из Колесо MDN :
var event = {
// keep a ref to the original event object
originalEvent: originalEvent,
target: originalEvent.target || originalEvent.srcElement,
type: "wheel",
deltaMode: originalEvent.type == "MozMousePixelScroll" ? 0 : 1,
deltaX: 0,
deltaY: 0,
deltaZ: 0,
preventDefault: function() {
originalEvent.preventDefault ?
originalEvent.preventDefault() :
originalEvent.returnValue = false;
}
};
Нет свойств с положением мыши в этом объекте (подумайте о пролистывании, без положения, только направление вектор ).
Теперь ответим:
, чтобы элементы взаимодействовали с курсором мыши как при прокрутке, так и при перемещении мыши
Вы должны использовать событие mouseenter и событие mouseleave непосредственно для элементов или даже событие mouseover .
Браузер делает всю работу за вас, чтобы знать, входит ли мышь , выходит, или над элементом, когда вы прокручиваете или перемещаете.
Каккомментарий, события мыши - это события здравого смысла, если ничего не происходит (мышь не двигается), ничего не происходит, событие перемещения не происходит.Фактически, любой крючок может изменить положение мыши без уведомления вашего браузера (получить событие более низкого уровня), таким образом, не реагируя.