google map v3 创建右键菜单

分类:地图(Maps)| 发布:camnprbubuol| 查看: | 发表时间:2011/4/13

//初始化右键菜单,在初始化地图中一并初始化了。
    var ContextMenuControlDiv = document.createElement(’DIV’);
    var ContextMenuControl = new createContextMenu(ContextMenuControlDiv, map);

    ContextMenuControlDiv.index = 1;
    map.controls[google.maps.ControlPosition.TOP].push(ContextMenuControlDiv);/*区别于google map v2的增加层的方式*/

/*创建右键菜单*/
function createContextMenu(controlUI,map) {
  contextmenu = document.createElement("div");
  contextmenu.style.display = "none";
  contextmenu.style.background = "#ffffff";
  contextmenu.style.border = "1px solid #8888FF";
  contextmenu.innerHTML = "<a href=’javascript:alert();’><div class=’context’> 放大 </div></a>"
  + "<a href=’javascript:zoomOut()’><div class=’context’> 缩小 </div></a>"
  + "<a href=’javascript:zoomInHere()’><div class=’context’> 以此为中心放大 </div></a>"
  + "<a href=’javascript:zoomOutHere()’><div class=’context’> 以此为中心缩小 </div></a>"
  + "<a href=’javascript:centreMapHere()’><div class=’context’> 以此居中 </div></a>";

  controlUI.appendChild(contextmenu);
/*给整个地图增加右键事件监听*/
  google.maps.event.addListener(map, ’rightclick’, function (event) {
  alert(event.latLng);
  contextmenu.style.display = "block";
  });
/*点击菜单层中的某一个菜单项,就隐藏菜单*/
  google.maps.event.addDomListener(controlUI, ’click’, function () {
  contextmenu.style.display = "none";
  });
}

这个是google map v3的右键菜单。

唯一不足的就是,不能在右键的地方现实菜单,只能在一个固定的位置现实。

+---------------+  
  + TL T TR +  
  + +  
  + L R +  
  + +  
  + +  
  + +  
  + BL B BR +  
  +---------------+  

常数

常数说明
BOTTOM元素定位在底部行的中间。
BOTTOM_LEFT元素定位在左下角并向中间流动。元素定位在 Google 徽标的右侧。
BOTTOM_RIGHT元素定位在右下角并向中间流动。元素定位在版权的左侧。
LEFT元素定位在左侧,位于左上角的元素下面,并向下流动。
RIGHT元素定位在右侧,位于右上角的元素下面,并向下流动。
TOP元素定位在顶部行的中间。
TOP_LEFT元素定位在左上角并向中间流动。
TOP_RIGHT元素定位在右上角并向中间流动。

声明:转载请标明出处,谢谢。 http://www.camnpr.com

365据说看到好文章不转的人,服务器容易宕机
原创文章如转载,请注明:转载自郑州网建-前端开发 http://camnpr.com/
本文链接:http://camnpr.com/archives/260.html