地图事件概述【GMap 学习笔记】

事件监听器:GEvent
注册监听器:(静态方法)GEvent.addListener(受用对象,待监听事件,事件发生时调用的函数); 示例:显示用户拖动地图后地图中心的纬度和经度。

<! DOCTYPE html "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
>
  
< html  xmlns ="http://www.w3.org/1999/xhtml" >
   
< head >
     
< meta  http-equiv ="content-type"  content ="text/html; charset=utf-8" />
     
< title > Google Maps JavaScript API Example </ title >
     
<!-- 使用 script 标签包含 Google 地图,key传递 sensor 参数以指明此应用程序是否使用传感器来确定用户位置 -->
     
< script  src ="http://ditu.google.cn/maps?file=api&amp;v=2&amp;key=abcdefg&sensor=true_or_false"
             type
="text/javascript" ></ script >
     
< script  type ="text/javascript" >
 
   
function  initialize() {
        
var  map =   new  GMap2(document.getElementById( " map_canvas " ));
        map.setCenter(
new  GLatLng( 38.8894211 , 121.5866657 ),  15 );
        
// 示例:显示用户拖动地图后地图中心的纬度和经度。
        GEvent.addListener(map,  " moveend " function () {
        
var  center =  map.getCenter();
        alert(
" 此时地图中心点的纬经度为: " + center.toString());
    });


   }

    
</ script >
  
</ head >
  
<!-- 使用onLoad 事件初始化地图对象 -->
  
< body  onload ="initialize()"  onunload ="GUnload()" >
  
<!-- 让其显示在网页中 -->
    
< div  id ="map_canvas"  style ="width: 600px; height: 600px" ></ div >
  
</ body >
 
</ html >



事件列表:

事件说明
addmaptype(type:GMapType ) 向地图中添加地图类型时会触发此事件。
removemaptype(type:GMapType ) 从地图中删除地图类型时会触发此事件。
click(overlay:GOverlay , latlng:GLatLng , overlaylatlng:GLatLng ) 用户用鼠标点击地图时会触发此事件。根据所点击的环境的不同以及是否点击了可点击的叠加层,click 事件会传递不同的参数。如果点击的不是可点击叠加层,overlay 参数为 null 并且 latlng 参数包含点击点的地理坐标。如果点击的是clickable 叠加层(如 GMarker GPolygon GPolyline GInfoWindow ),overlay 参数包含叠加层对象,而 overlaylatlng 参数会包含所点击叠加层的坐标。另外,还会在该叠加层自身上触发 click 事件。
dblclick(overlay:GOverlay , latlng:GLatLng ) 双击地图时会触发此事件。注意,双击标记或其他可点击叠加层时不触发此事件。被双击的点的地理坐标将被传递到 latlng 参数中。overlay 参数始终设置为 null

(自 2.83 开始)

singlerightclick(point:GPoint , src:Element, overlay?:GOverlay ) 在地图容器中触发 DOM contextmenu 事件时会触发此事件。如果右键点击某个标记或其他可点击叠加层,则该叠加层会传递到 overlay 参数的事件处理程序中。右键点击的这一点的像素坐标(在包含地图的 DOM 元素中)和 DOM 事件的源元素会分别传递到 pointsrc 参数中。注意,如果在启用了双击缩放的情况下进行右键双击,那么,地图会缩小,并且不触发 singlerightclick 事件。但是,如果禁用了双击缩放,会触发两个 singlerightclick 事件。

(自 2.84 开始)

movestart() 地图视图开始更改时会触发此事件。执行拖动操作时或调用更改地图视图的方法时也会触发此事件,前者还同时触发 dragstart 事件。
move() 更改地图视图时会触发此事件,并且可能是重复触发。
moveend() 结束地图视图的更改时会触发此事件。
zoomend(oldLevel:Number, newLevel:Number) 地图到达新的缩放级别时会触发此事件。事件处理程序接收先前的缩放级别和新缩放级别作为参数。
maptypechanged() 选择另一地图类型时会触发此事件。
infowindowopen() 打开信息窗口时会触发此事件。
infowindowbeforeclose() 关闭信息窗口前会触发此事件。

(自 2.83 开始)

infowindowclose() 关闭信息窗口时会触发此事件。此事件在触发前会触发 infowindowbeforeclose 事件。如果通过再次调用 openInfoWindow*() 在其他点重新打开当前已打开的信息窗口,则会先后触发 infowindowbeforecloseinfowindowcloseinfowindowopen 事件。
addoverlay(overlay:GOverlay ) 当使用 addOverlay() 方法向地图中添加单个叠加层时会触发此事件。新的叠加层会作为参数 overlay 传递到事件处理程序中。
removeoverlay(overlay:GOverlay ) 当使用 removeOverlay() 方法删除单个叠加层时会触发此事件。删除的叠加层会作为参数 overlay 传递到事件处理程序中。
clearoverlays() 当使用 clearOverlays() 方法一次性删除全部叠加层时会触发此事件。
mouseover(latlng:GLatLng ) 当用户将鼠标从地图外移动到地图上时会触发此事件。
mouseout(latlng:GLatLng ) 当用户将鼠标移离地图时会触发此事件。
mousemove(latlng:GLatLng ) 当用户在地图中移动鼠标时会触发此事件。
dragstart() 当用户开始拖动地图时会触发此事件。
drag() 当用户拖动地图时会重复触发此事件。
dragend() 当用户停止拖动地图时会触发此事件。
load() 当完成地图设置时会触发此事件,并且 isLoaded() 会返回 true 。这表示位置、缩放和地图类型都已完成初始化,但可能还在载入图块。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值