Как включить событие «панорамирование» в scopeContaner для сенсорных устройств - Просмотр миниатюр в формате SVG - PullRequest
0 голосов
/ 18 ноября 2018

Я использую отличный плагин svg-pan-zoom (https://github.com/ariutta/svg-pan-zoom).

Я реализовал Thumbnail Viewer, как если бы он был найден в демоверсии http://ariutta.github.io/svg-pan-zoom/demo/thumbnailViewer.html).

События click и mousemove, работают нормально.Теперь я хотел бы включить прослушиватель событий панорамирования на сенсорных устройствах, когда пользователи панорамируют scopeContainer.

Я попытался добавить прослушиватель событий в основной исходный код (thumbnailViewer.js), добавив «pan» с помощьюHammerJs.Без везения.

Код

var scopeContainer = document.getElementById('scopeContainer');
        scopeContainer.addEventListener('click', function (evt) {
            //console.log(evt.which) - returns 1
            updateMainViewPan(evt);
        });

        scopeContainer.addEventListener('mousemove', function (evt) {
            updateMainViewPan(evt);
        });
        const mc = new window.Hammer(scopeContainer,
            {
                inputClass: window.Hammer.SUPPORT_POINTER_EVENTS ? window.Hammer.PointerEventInput : window.Hammer.TouchInput
            });
        mc.set({ enable: true });
        mc.on("pan", function (evt) {
           //console.log(evt.which) - return undefined
          //console.log(evt) - returns Touch
            updateMainViewPan(evt); // gives error
            //$("#scopeContainer").trigger('click');
        });

Ошибка.Ошибка: преобразование атрибута: ожидаемое число, «… 824701313996363, NaN, NaN)».

Ошибка связи

...