地图事件

     腾讯地图API具有事件接口,用户可以根据各自不同的需求添加不同的事件扩展。

     目前腾讯地图提供的事件类型有两类:

  • 用户事件(如“点击地图”鼠标事件)是从 DOM 传播到 腾讯 Maps API 中的。这些事件是独立的,并且与标准 DOM 事件不同。包括:单击事件(click)、双击事件(dblclick)、鼠标滑过事件(mouseover)、鼠标移动(mousemove)等;
  • 腾讯地图API特有的事件,MVC 状态更改通知反映了腾讯Maps API 对象中的更改,并以 property_changed 惯例命名。如:缩放级别更改事件(zoom_changed)、内容更改事件(content_changed)等。

添加地图点击事件

     如果您想对地图添加鼠标左键点击事件,只需要在代码中添加如下内容:

添加点击事件

var listener = qq.maps.event.addListener(
    map,
    'click',
    function() {
        alert('您点击了地图。');
    }
);

     查看示例

     使用qq.maps.event.addListener() 可以将事件绑定到某一个对象上,返回一个监听者对象。方法第一个参数为被绑定事件的对象,第二个参数为事件类型,第三个参数为事件的处理方法。


事件中获取参数

     addListener() 在事件被触发时会将 DOM 事件对象传入事件的处理方法,并在事件对象中添加鼠标当前位置的地理坐标属性 LatLng。

获得位置:

qq.maps.event.addListener(
    map,
    'click',
    function(event) {
        alert('您点击的位置为:[' + event.latLng.getLng() +
        ',' + event.latLng.getLat() + ']');
    }
);

     查看示例


移除事件

     我们可以通过 removeListener() 方法移除已经添加的事件。

移除事件:

var listener = qq.maps.event.addListener(
    map,
    'click',
    function() {
        alert('您点击了地图。');
    }
);
//移除 click 事件.
qq.maps.event.removeListener(listener);

     查看示例

     值得注意:removeListener() 方法的第一个参数为 addListener() 方法返回的事件监听者对象。

这篇文章对您解决问题是否有帮助?

已解决
未解决