Больше комментариев / улучшений по компоненту переключения принятого ответа , и это здорово (спасибо). Но.
При взаимодействии с картой для многих случаев использования пользователю также необходимо щелкнуть карту, чтобы выполнить свою задачу, поэтому это:
map.on('click', function() {
if (map.scrollWheelZoom.enabled()) {
map.scrollWheelZoom.disable();
}
else {
map.scrollWheelZoom.enable();
}
});
Может привести к неожиданному поведению, когда пользователь действительно начнет использовать карту.
Я бы предложил что-то, что может показаться пользователю более интуитивно понятным - щелкните по карте, чтобы отключить прокрутку мышью .
Например, установите ваш scrollWheelZoom: false
как выше, тогда:
map.on('focus', function() { map.scrollWheelZoom.enable(); });
map.on('blur', function() { map.scrollWheelZoom.disable(); });