开发 地图 JS API 1.4 参考手册 事件

事件 最后更新时间: 2021年01月22日

事件有两种使用方式

第一种,针对Map、覆盖物等常用类,我们推荐直接使用这些类的对象的on、off成员方法来实现事件的简单绑定和移除,具有使用方便、代码简洁的特点
方法 返回值 说明
on( eventName, handler, context) 注册事件,给Map或者覆盖物对象注册事件
eventName:事件名称(必填),
handler:事件回调函数(必填),
context:事件回调中的上下文(可选,缺省时,handler中this为调用on方法的对象本身,否则this指向context引用的对象)
注意:多次绑定时,当eventName、handler函数对象、context对象有任意一个不一样就会再次绑定。
off( eventName, handler, context) 移除事件绑定
eventName:事件名称(必填),
handler:事件功能函数(必填),
context:事件上下文(可选,缺省时为调用off方法的对象本身,否则为context引用的对象)
注意:只有当off与on的eventName、handler函数对象、context对象完全一致时才能有效移除监听。

第二种,使用AMap.event命名空间
方法 返回值 说明
addDomListener( instance, eventName, handler, context) EventListener 注册DOM对象事件:给DOM对象注册事件,并返回eventListener。运行AMap.event.removeListener(eventListener)可以删除该事件的监听器。
参数:
instance:需注册事件的DOM对象(必填),
eventName:事件名称(必填),
handler:事件功能函数(必填),
context:事件上下文(可选,缺省时,handler中this指向参数instance引用的对象,否则this指向context引用的对象)
addListener( instance, eventName, handler, context) EventListener 注册对象事件:给对象注册事件,并返回eventListener。运行AMap.event.removeListener(eventListener)可以删除该事件的监听器。
参数:
instance:需注册事件的对象(必填),
eventName:事件名称(必填),
handler:事件功能函数(必填),
context:事件上下文(可选,缺省时,handler中this指向参数instance引用的对象,否则this指向context引用的对象)
addListenerOnce( instance, eventName, handler, context) EventListener 类似于addListener,但事件只会被触发一次,之后将自动移除。
removeListener( listener) none 删除由上述 event.addDomListener 和 event.addListener 传回的指定侦听器。
trigger( instance, eventName, extArgs) none 触发非DOM事件
触发非DOM事件eventName时,extArgs将扩展到事件监听函数(handler)接受到的event参数中。
如:在extArgs内写入{m:10,p:2},eventName监听函数(handler)可以接收到包含m,p两个key值的event对象。

相关示例

EventListener 对象规范
(自v1.2 新增)

此对象没有构造函数,由 event 的 addDomListener()、addListener()方法返回,在需要移除事件监听器时,作为参数传递给 removeListener() 方法。

MapsEvent 对象规范
(自v1.2 新增)

此对象用于表示地图、覆盖物、叠加层上的各种鼠标事件返回,包含以下字段:

MapsEventOptions 类型 说明
lnglat LngLat 发生事件时光标所在处的经纬度坐标。
pixel Pixel 发生事件时光标所在处的像素坐标。
type String 事件类型。
target Object 发生事件的目标对象,不同类型返回target不同。例如,事件对象是Marker,则target表示目标对象为Marker,事件对象是其他,则随之改变。
返回顶部 示例中心 常见问题 智能客服 公众号
二维码