2012-08-22 3 views
20

V3지도의 mapOptions (초기지도가로드 된 후)를 수정하려면 어떻게해야하나요?로드 후 Google지도 v3 mapOptions 객체 변경

특히, I (예 : 사업부의 클릭 등) 액션이 발생하면

draggable: true 

draggable: false 

옵션을 플립 할 수 있도록하고 싶습니다.

추가 :

$('#map').gmap('option', 'draggable', true); 

그러나이지도를 다시로드하고 다른 모든 기존의 옵션을 잊지 것 : 나는로드 JQuery와-UI-지도 및 사용을 시도했습니다. 나는 그들 모두를 재정의 할 수있다. 그러나 그것은 조금 hackish하게 보인다.

감사합니다.

감사합니다.

+1

. :-) – Marcelo

+0

질문에 답변 해주십시오. –

+0

이것이 컨트롤을 업데이트하지 않는 이유는 무엇입니까? 즉, map.set (scaleControl, false); –

답변

36

jQuery가 필요하지 않다는 사실을 알게되었습니다. 이미 Google Maps API에 포함되어 있습니다. 간단히 :

map.set('draggable', true); 

너무 쉽게! 누군가가 도움이되기를 바랍니다. 이미지도 이전에 생성 한 경우

2

, 당신은 이런 식으로 한 번에 여러 옵션 (https://developers.google.com/maps/documentation/javascript/reference#MapOptions)을 설정할 수 있습니다

var myOptions = { 
        zoom:11, 
        center: new google.maps.LatLng(-34.397, 150.644), 
        mapTypeId: google.maps.MapTypeId.ROADMAP, 
        panControl: false 
       }; 

map.set(myOptions); 
+3

이런 종류의 일은 나를 위해 일했지만 내지도 개체에는'set()'함수가 없으므로'setOptions myOptions)', 팁을 주셔서 감사합니다! – Unixmonkey

+0

@Unixmonkey Thanks =) –

5

Google지도 자바 스크립트 API의 V3.25 업데이트

map.set()을 그 최신 버전의 Maps API에서는 작동하지 않습니다. 당신은 사용할 필요가 map.setOptions()

출처 : 내가 직접 그것을 할 수있을만큼 쉬운 때 지구에 기뻐 이미 발견 .... jQuery를 함께 일을 복잡하게 왜 말을하려고했다 Google Maps Reference

+1

좋은 지적. 익숙하지 않은 사람들을위한 빠른 구문 사용 : map.setOptions ({gestureHandling : 'greedy'}); – Ian