Клуб API Карт

Как отключить изменение масштаба карты колесом прокрутки мыши?

Пост в архиве.

Конструкция

myMap.behaviors.disable('ScrollZoom');  не работает.

Проверено на своем сайте и на https://tech.yandex.ru/maps/jsbox/2.1/behaviors (если изменить 16 строку на  .disable(['ScrollZoom', 'drag', 'rightMouseButtonMagnifier'])) ничего не меняется

Проверено в MacOS Firefox, Opera, Safari

 

З.Ы. Очень раздражжает, когда прокручивается страница, а в середине вставлена карта. При достижении карты прокрутка останавливается, а масштаб карты улетает в заоблачные выси. :-(

41 комментарий
Всеволод Шмыров
27 января 2016, 22:56
Добрый вечер. Нужно писать
myMap.behaviors..disable('scrollZoom') (с маленькой буквы)
Регистор символов важен.

Сорри, не досмотрел. Спасибо!

Всеволод Шмыров,
И с одной точкой перед disable
И где мне это указать? Вот код моей карты <script type="text/javascript" charset="utf-8" async="" src="https://api-maps.yandex.ru/services/constructor/1.0/js/?sid=IvznWNMW6HH0fwv_MVgW35QYL7hTzDqj&amp;width=1280&amp;height=300&amp;lang=ru_RU&amp;sourceType=constructor&amp;"></script>

Всеволод Шмыров
27 июня 2016, 16:40
arcompany.by,
Добрый день. У вас код не API, а виджета карты из конструктора. Чтобы отключить прокрутку надо убрать указание GET-параметра scroll=true из URL подключение кода виджета. В вашем коде параметр как раз отсутствует.
ГК Бурение
8 июля 2019, 16:01
Всеволод Шмыров,
в мобильной версии на смартфоне все равно прокручивается карта
arcompany.by,
Вы можете посмотреть описание параметров в документации: https://tech.yandex.ru/maps/doc/constructor/concepts/About-docpage/#interactive
arcompany.by,
<script type="text/javascript" charset="utf-8" async src="https://api-maps.yandex.ru/services/constructor/1.0/js/?sid=tpYGtqNRa3kNFvV6so0m5i8R6xniMP48&amp;width=100%&amp;height=450&amp;lang=ru_RU&amp;sourceType=constructor&amp;scroll=false"></script> - код скопированный из конструктора.


в последней строке измени "true" на "false" , и будет тебе счастье =)
Спасибо, и правда счастье.
gespo-test,
Спасибо большое!!!!!! мне помогло
gespo-test,
Спасибо добр человек
gespo-test,
и от меня )
gespo-test,
Спасибо доброму человеку)
Утоните, е есть параметр(типа scroll) который так же можно передать в GET, чтоб отключить скрол с тача(телефона, планшета)
Мигель де ла Круз
26 января 2018, 20:45
kredo-garant,
Вы решили ваш вопрос? Скажите как? Тоже увидел, что для телефонов есть такая функция, чтобы крутить карту надо 2 пальца. Как это делать?
У меня такой код в чанке MODX. Когда я добавляю .behaviors.disable('scrollZoom'); все карты перестают работать.
  
<script type="text/javascript">
YMaps.jQuery(function () {
var map_[[+alias]] = new YMaps.Map(YMaps.jQuery("#YMapsID_[[+alias]]")[0]);
map_[[+alias]].setCenter(new YMaps.GeoPoint([[+tv.a4yYMapCoords]]), 16);
var placemark = new YMaps.Placemark(new YMaps.GeoPoint([[+tv.a4yYMapCoords]]));
placemark.name = "[[+pagetitle]]";
placemark.description = "[[+description]]";
map_[[+alias]].addOverlay(placemark);


map_[[+alias]].behaviors.disable('scrollZoom');
})
</script>
Обновлено 6 марта 2017, 00:56
kon.rafikov,
behaviors.disable это из версии 2 у вас судя по коду версия 1
ДОброго дня. 
А для frame карты как можно избежать авто масштабирования?
info@sidmasters.ru,
Меня тоже интересует данный вопрос. Яндекс ответьте пожалуйста!
Также интересует решение. Очень надо.
Buggybuggy,
поведения Виджета Карт в iframe настраивать нельзя
Корнев Евгений
21 августа 2019, 16:09
ymapsapi,
Ну вот и очевидная недоработка!
Андрей Сиднев
30 сентября 2019, 06:43
info@sidmasters.ru,
 Не появилось еще решения?
Андрей Сиднев,
В принципе, вот неплохая статья на эту тему. Там с помощью несложного скрипта и дива-обёртки данная проблема решается в несколько строк кода: https://blog.lisogorsky.ru/ignor-scroll-iframe-maps
Обновлено 9 октября 2019, 10:47
Здравствуйте! Как отключить масштабирования карты при скролле страницы сайта? Когда прокручивается страница до карты,то дальше не скролит,а масштабируется карта. Вот код <script type="text/javascript" charset="utf-8" async src="https://api-maps.yandex.ru/services/constructor/1.0/js/?um=constructor%3A1cf5b86f223091164dfa32c694ee63af164a16cdd6d26da88a4215764b3d699b&amp;width=100%25&amp;height=648&amp;lang=ru_RU&amp;scroll=true"></script>
st-otryad,
как описано в документации, нужно выставить scroll=false. Это отключить скролл карты колесом мыши
как отключить скролл в tframe или почему в мобильной версии яндекс браузера не отображается карта вставленная скриптом? В скрипте я знаю как отключить скролл, но пришлось вставить через tframe, потому что в мобильной версии браузера не отображается, может есть какое то решение?
masterng,
в iframe скролл отключить нельзя, он не кастомизируется. Если у вас возникли проблемы с работой карты в каком-то браузере, напишите, пожалуйста, нам в техподдержку со всеми подробностями - постараемся помочь.
algirdas.brazauskas
30 июля 2018, 12:07
Даже при указанном scroll=false в картах из конструктора, карта скроллится на мобильных устройствах.
Есть другое решение проблемы?
algirdas.brazauskas,
scroll=false отключает масштабирование колесом мыши, для мобильных надо использовать API и отключать поведение multiTouch
algirdas.brazauskas
30 июля 2018, 12:28
Arina,
т.е. нужно переходить на JS API, ясно, спасибо.



А есть простой пример: карта + своя метка (марке) + описание при клике на маркер???
Обновлено 30 июля 2018, 12:28
algirdas.brazauskas,
да, вот: https://tech.yandex.ru/maps/jsbox/2.1/placemark
Arina,
где можно почитать, про то как использовать API и как отключить  поведение multiTouch
algirdas.brazauskas,
Решение с прокруткой внутри iframe есть: https://blog.lisogorsky.ru/ignor-scroll-iframe-maps
Обновлено 9 октября 2019, 10:45
Денис Лис,
всё равно скроллится
algirdas.brazauskas,
Пришлите ссылку на страницу
что нужно сделать чтобы масштабирование карты происходило только при зажатом ctrl
maxon2288sin,
стандартного поведения для этого нет. Вы можете запрограммировать такую логику самостоятельно.