을 통해 설정 한 경우와 다른 방식으로 사용자가 mapTypeControl
을 클릭 할 때 대소 문자를 처리해야합니다. 지도 유형 컨트롤에서 클릭을 수신하려면 어떻게해야합니까?google maps api v3 :지도 유형 컨트롤에서 사용자 클릭 처리?
0
A
답변
1
기본 UI 컨트롤 집합에서 이벤트를 수신 대기 할 수 없습니다. 하지만이 엄격하게 mapTypeControl
및 map.setMapTypeId()
에 대한 클릭을 구별에 집중하는 경우, 당신은 당신이 setMapTypeId()
를 호출하고 어떤 상태 관리 코드를 추가 할 수 있습니다 코드 제어한다는 사실을 사용할 수
// First, add a new state var:
var typeIdChangedInCode = false;
// Then, anywhere in your code where you call setMapTypeId(), add this:
typeIdChangedInCode = true;
map.setMapTypeId(newTypeId);
// Finally, include state checking code in the map event listener:
google.maps.event.addListener(map, "maptypeid_changed", function(evnt) {
if (typeIdChangedInCode) {
//handle the scenario in the non-click way, but REMEMBER TO:
typeIdChangedInCode = false;
}
else {
//handle the scenario in the map click way
}
});
이 당신을 설정해야합니다을 필요한 두 가지 사건을 처리하십시오.
0
google.maps.event.addListener(map, 'maptypeid_changed', function(e){
alert(map.getMapTypeId());
});
프로그래밍 방식의 맹방 변경이나 사용자가 컨트롤을 클릭 한 결과인지 어떻게 알 수 있습니까? 이것은 두 경우 모두에서 발생하는 것으로 보입니다 (이것이 제가 질문하는 이유입니다). –
미안하다. –