Google предоставил разработчикам больше контроля над тем, как обрабатывается прокрутка на сайтах со встроенными картами.
Написав об изменениях в блоге разработчиков Google Geo, Елена Келарева, менеджер по продуктам Google Maps API, сказала, что, поскольку пользователи чаще просматривают веб-сайты на мобильных устройствах, чем на настольном компьютере или ноутбуке, разработчики Google работают над изменениями в том, как карты реагируют на прокрутку пользователей:
«Пользователи мобильного Интернета часто расстраиваются при попытке прокрутить страницу, но встроенная карта захватывает их салфетки и вместо этого перемещает карту. Это может даже привести к тому, что пользователи застрянут на карте и им придется перезагрузить страницу, чтобы вернуться к остальной части страницы.» «Сегодня мы вводим интуитивно понятную прокрутку для сайтов со встроенными картами и делаем полноэкранное управление видимым по умолчанию на мобильных устройствах. Это должно дать вашим пользователям более интуитивный и менее неприятный опыт взаимодействия с картами в мобильных браузерах.»
На практике в API JavaScript Google Maps была добавлена новая опция управления жестами. Этот параметр определяет, как обрабатываются сенсорные жесты на карте. Это не распространяется на изменение режима обработки жестов для просмотра улиц; эти параметры влияют только на то, как жесты обрабатываются картой.
До сих пор все сенсорные жесты выполняли панорамирование или масштабирование карты, но теперь вы можете настроить элемент управления, чтобы запретить жестам пользователя панорамирование или масштабирование карты. У вас также есть возможность использовать жесты касания двумя пальцами для панорамирования и масштабирования карты, но игнорировать жесты касания одним пальцем. Это заставляет карту взаимодействовать со страницей, так что жесты одним пальцем могут перемещаться по странице.
Вы можете включить различные режимы обработки жестов, добавив соответствующее поле в объект mapOptions. Например:
map = new google.maps.Map(document.getElementById(‘map-div’), { gestureHandling: ‘cooperative’, center: {lat: -34.397, lng: 150,644}, масштабирование: 8 });
Еще одним улучшением является возможность позволить пользователю максимизировать встроенные карты. Когда карта находится в полноэкранном режиме, пользователь может перемещать карту одним пальцем.
Как разработчик, вы можете включить или отключить полноэкранное управление, установив для параметра fullscreenControl значение true или false в объекте mapOptions. Когда карта находится в полноэкранном режиме, один палец всегда будет перемещать карту, так как нет окружающей страницы для перемещения.