Google Maps API 进级: GoogleMaps常用事件及应用思路1
1.?????? GoogleMaps常用事件及應用思路
地圖再被鼠標拖動時,GMap2對象會激發dragstart,drag,dragend等事件。
示例:動態顯示地圖的中心位置。
??? //更新信息,el為指定HTML元素,info為里邊顯示的內容
??? function updateInfo(el, info)
??? {
????? el.innerHTML = info;
??? }
???
??? //添加拖動事件監聽器
??? function addDragListener()
??? {
?????? //監聽地圖上的事件
?????? GEvent.addDomListener(map, 'dragstart', function()
??????????????????? {
?????? ?????????????????updateInfo(eventinfo, "當前事件:dragstart");
??????????????????? });
?????? GEvent.addDomListener(map, 'drag', function()
??????????????????? {
??????????????????????? updateInfo(eventinfo, "當前事件:drag");
??????????????????????? updateInfo(mapcenter, "當前地圖中心緯度:" + map.getCenter().lat() + " 經度" + map.getCenter().lng());
??????????????????? });
?????? GEvent.addDomListener(map, 'dragend', function()
??????????????????? {
??????????????????????? updateInfo(eventinfo, "當前事件:dragend");
????????????? ??????});
}
地圖縮放是,GMap2激發zoomstart和zoomend事件。
示例:動態獲取地圖縮放級別
??? //添加縮放事件監聽器
??? function addZoomListener()
??? {
?????? //監聽地圖上的縮放事件
?????? GEvent.addDomListener(map, 'zoomstart', function()
??????????????????? {
??????????????????????? updateInfo(eventinfo, "當前事件:zoomstart");
??????????????????? });
?????? GEvent.addDomListener(map, 'zoomend', function()
??????????????????? {
??????????????????????? updateInfo(eventinfo, "當前事件:zoomend");
??????????????????????? updateInfo(zoomlevel, "當前地圖縮放級別:" + map.getZoom());
??????????????????? });
}
?
地圖類型發生改變,GMap2會激發maptypechanged事件。
示例:動態獲取地圖類型。
??? //添加maptypechanged事件監聽器
??? function addMapTypeListener()
??? {
?????? //監聽地圖上maptypechanged事件
?????? GEvent.addDomListener(map, 'maptypechanged', function()
?????????? ?????????{
??????????????????????? updateInfo(eventinfo, "當前事件:maptypechanged");
??????????????????????? updateInfo(maptype, "當前地圖類型:" + map.getCurrentMapType().getName(false));
??????????????????? });
}
?
單擊Google地圖,GMap2會激發click事件。注意:該事件包含兩個參數:overlay,point。
示例:獲取鼠標位置,并添加GMarker對象。
??????? GEvent.addListener(map, 'click', function(overlay, point)
???????????????????????? {
?????????????????????????? if(point)
?????????????????????????? {
???????????????????????????? var marker = new GMarker(point);
????? ???????????????????????map.addOverlay(marker);
?????????????????????????? }
???????????????????????? });
總結
以上是生活随笔為你收集整理的Google Maps API 进级: GoogleMaps常用事件及应用思路1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2020-3-28
- 下一篇: 微博平台StatusNet研究(4):快