Leaflet iOS touch trouble (shared example)

Здравствуйте.

Если касанием сдвинуть карту, то после этого не работают кнопки контроля (зум, выбора слоя).
Кнопки начинают работать только после следующего тапа по карте, но только, если ее не двигать.

Проблема только в iOS вместе с Framework7 (без фреймворка все Ок).
Может быть кто-то сталкивался?..

Спасибо.

Добавлено:
Повесил на кнопку зума событие ‘click’ в Dom7 и тоже самое, событие не фиксируется, пока не сделать тап по карте, хотя кнопка и меняет фокус…

Добавлено:
Расшарил пример https://452694.playcode.io/

Может с fastclick связано?

shastox, прописывал fastClicks в false, ничего не меняется.

Открыл старый проект с этой же картой в Framework7 v1, там все летает.
Интересно, что в F7 v4 может влиять на карту и как бы это отладить в мобильном iOS?..

Расшарил код https://452694.playcode.io/
Проблема только на iOS, можно ли ее как-то решить?..

Если на iOS установить тему theme: ‘md’ проблема останется?

shastox, да, проблема остается в теме md, также и в aurora…

Версия iOS одна из последних? Бывают баги.

Это смотрели https://github.com/Leaflet/Leaflet/issues/6024 ? А это: https://stackoverflow.com/questions/42386814/leaflet-map-issue-in-safari-using-iphone-and-ipad ?

Почему карта создается не в pageInit?

shastox, конечно тему гуглил и видел темы, которые Вы сбросили (по первой там проблема с плагином GoogleMutant, который я не использую, хотя и попробовал увеличить z-index у кнопок зума, но это не помогло. по второй ссылке это из другой оперы).
Закинул у себя создание карты в pageInit, но ничего не поменялось.

Вы пробовали подключить вывод консоли из реального устройства? Там есть ошибки?

На какой момент подключения F7 возникает проблема: include js, создание экземпляра app (в этом случае попробуйте вынести init отдельно и посмотреть), навигация?

На iOS 13.1 beta не вижу проблем по ссылке. Всё работает, кнопки +/- нажимаются без проблем не зависимо от взаимодействия с картой

на 12.4 и 12.4.1 проблема есть

I had the following error on Ipad, when I clicked on the circle or the rectangle, all the application clicks were deactivated.

I solved it by directly editing the leaflet.draw-src.js file (I changed the main in the package.json to load this file by default):

document.addEventListener(‘touchstart’, L.DomEvent.preventDefault, {passive: false});
to:
document.addEventListener(‘touchstart’, L.DomEvent.preventDefault, {passive: true});

Leaflet.draw - это плагин, который я не использую.
Но проблема с событиями touch, Dom7 как-то перехватывает?
P.S. через пару недель поставлю virtual box с mac os и попробую отловить…

Добрый день , удалось ли вам решить эту проблему ?

Здравствуйте.
Да, проблема решена в 5.3.2 (подробности в конце темы ES Template -> component:{template: })

У Вас похожие проблемы с картой? Опишите подробнее, что не работает и с какими версиями.

1 Like

У меня версия 4.4.10 , проблема не с IOS а с Android , при любом touch движение по карте , у кнопок зума пропадает event или просходит конфликт , если отлаживать через удаленку в chrome то я получаю следующее исключение , но без удаленки ни каких ошибок нет.Самое главное если я кликну/тапну на карту и отрисую что либо на ней то кнопки снова станут активными до следущего тача.(Ошибка при удаленой отладке:https://yadi.sk/i/RmO83YIKNaZeng)

В IOS14 возникла проблема с Google картой, не работает перемещение.
Пример здесь (выбрать google карту справа сверху).

А без Framework7 она работает?

Работает, пока не сделать двумя пальцами zoom (по крайней мере в этой демке), а с F7 даже не двигается…