Получение координат мыши с событием обработчика, не работающим в FireFox - PullRequest
0 голосов
/ 20 февраля 2019

Я запускаю функцию-обработчик ниже, в середине более крупной функции перехода по страницам.Это позволяет получить положение мыши и переместить мой маску div туда, где была нажата кнопка мыши.

function handler(e) {
    e = e || window.event;

    let pageX = e.pageX;
    let pageY = e.pageY;

    // IE 8
    if (pageX === undefined) {
        pageX = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
        pageY = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
    }

    $mask.css({
        'top': pageY - $(window).scrollTop(),
        'left': pageX
    })
}

Это прекрасно работает в Opera, Chrome, Safari и iOS (хотя и слегка отключено).Но в Firefox я получаю следующую ошибку:

Unhandled promise rejection TypeError: "e is undefined"

Функция обработчика вызывается с помощью простого: handler() внутри функции перехода страницы.

Я пытался ее изменитьдо использования CustomEvent я стрелял, но у него не было никаких свойств мыши.

...