Карты Google Отключить панорамирование пользователем всех событий

В моем приложении карт Google у меня есть метод отслеживания, который следует за движущимся маркером. Когда это происходит, я хочу разрешить масштабирование всеми обычными методами (dblclick, dblleftclick, колесиком мыши и событиями касания ), и я хочу отключить панорамирование любого рода. Проблема в том, что при масштабировании с помощью колесика мыши и dblclick карта перемещается в положение мыши. Я могу отключить все в порядке, но я хочу разрешить масштабирование. Я решил проблему с колесиком мыши, используя плагин jquery mousewheel и используя дельту для изменения масштаба.

Есть ли простой способ сделать это или мне нужно написать прослушиватель для всех различных событий касания и мыши?

РЕДАКТИРОВАТЬ

Я уже отключил двойной щелчок, масштабирование и перетаскивание колесика мыши, но я хочу, чтобы функциональность двойного щелчка оставалась. Я также хочу, чтобы события касания были там, но я хочу, чтобы они масштабировались от центра, а не от того места, где произошло событие. Настоящая проблема заключается в воспроизведении событий, которые Google уже обрабатывает, но с небольшим изменением функциональности

var options = {
    disableDoubleClickZoom: true,
    draggable: false,
    scrollwheel: false,
    panControl: false
};

this.map = new google.maps.Map(document.getElementById('map'), options);

. Мое идеальное решение было бы, если бы были disableDoubleClickPanи disableScrollwheelPanили опция draggable, которая фактически предотвращает любое перетаскивание

РЕДАКТИРОВАТЬ

Это для всех устройств, настольных и мобильных.

23
задан georgephillips 13 June 2012 в 02:05
поделиться