Як відключити масштабування коліщатка прокрутки миші в Google Maps API
Я використовую Google Maps API (v3), щоб намалювати кілька карт на сторінці. Одна річ, яку я хотів би зробити, це відключити масштабування, коли ви прокручуєте колесо миші над картою, але я не впевнений, як це зробити.
Я відключив елемент керування масштабуванням (тобто видалив елемент інтерфейсу масштабування), але це не заважає масштабуванню колеса прокрутки.
Ось частина моєї функції (це простий плагін jQuery):
$.fn.showMap = function(options, addr){
options = $.extend({
navigationControl: false,
mapTypeControl: false,
scaleControl: false,
draggable: false,
mapTypeId: google.maps.MapTypeId.ROADMAP
}, options);
var map = new google.maps.Map(document.getElementById($(this).attr('id')), options);
// Code cut from this example as not relevant
};
552
3
У версії 3 Maps API ви можете просто встановити опцію
scrollwheel
в false у властивостях MapOptions:Якщо ви використовували версію 2 Maps API, вам потрібно було б використовувати виклик API disableScrollWheelZoom() наступним чином:
Масштабування
scrollwheel
за замовчуванням увімкнено у версії 3 Maps API, але у версії 2 воно вимкнене, якщо його не увімкнути явно за допомогою викликуenableScrollWheelZoom()
API.Daniel's code робить свою роботу (величезне спасибі!). Але я хотів повністю вимкнути масштабування. Я виявив, що для цього потрібно використовувати всі чотири варіанти:
Дивіться: Специфікація об'єкта MapOptions
У моєму випадку ключовим моментом було задати в init
'scrollwheel':false
. Зверніть увагу: Я використовуюjQuery UI Map
. Нижче наведено заголовок моєї функції CoffeeScript init: