Summary
Methods:
addListener |
添加事件监听,用来注册非鼠标键盘类事件. |
destroy |
销毁方法 |
dispatch |
派发事件 派发的事件通过addListener来监听。 |
fire |
派发事件 派发的事件通过register 来监听 |
register |
添加事件监听,用来注册鼠标键盘类事件监听。 |
removeListener |
移除事件监听,用来移除通过addListener添加的事件监听,注意只有在和注册事件时调用addListener方法传入的eventType和callback参数都一致时才能取消注册事件 |
unRegister |
移除事件监听 用来移除通过register添加的事件监听,注意只有在和注册事件时调用register方法传入的eventType和callback参数都一致时才能取消注册事件 |
Constructor
new EventManager()
事件管理类的构造函数。
Example
let evtMgr = new hmap.event.EventManager();
//注:在Map对象中有一个全局的event(通过map.event可获得)可供使用, 即{hmap.event.EventManager}对象,在地图应用产品中不用再创建EventManager对象。
Methods
-
addListener(eventType, callback, cancelBefore, once, target)
-
添加事件监听,用来注册非鼠标键盘类事件.
支持的事件类型:
1."MAPEVENT_MOVESTART": 注册后 开始拖动地图触发
2."MAPEVENT_MOVING":" 注册后 拖动地图过程中触发
3."MAPEVENT_MOVEEND": 注册后 拖动地图结束触发
4."MAPEVENT_ZOOMSTART": 地图开始缩放触发
5."MAPEVENT_ZOOMING": 地图缩放过程中触发
6."MAPEVENT_ZOOMEND": 地图缩放结束触发
7."MAPEVENT_ROTATESTART": 地图旋转开始触发
8."MAPEVENT_ROTATING": 地图旋转过程中触发
9."MAPEVENT_ROTATEEND": 地图旋转结束触发
10."LAYEREVENT_LOADEND": 图层加载完成触发
11."MAPEVENT_EXTENTCHANGED": 地图范围变化事件Parameters:
Name Type Default Description eventType
EventType 事件类型,参看EventType下定义的以上事件类型。
callback
function 事件监听后的回调函数
cancelBefore
Boolean false 表示注册时是否删除已经注册的同类型事件的监听。默认false:不删除之前注册的监听事件,true:删除之前注册的同类型监听事件。
once
Boolean false 是否只触发一次. false,可以触发多次.true,事件只触发一次,表示只要同类型事件触发过一次就会销毁该事件对象的传播
target
Object null 事件监听并响应后,事件流的当前对象(event._curTarget)会设置为target。如果不指定,则target默认为监听对象的上下文。
Example
map.event.addListener(EventType.MAPEVENT_MOUSEMOVE,function(evt){console.log(evt.getCoordinate());});
-
destroy()
-
销毁方法
-
dispatch(event)
-
派发事件 派发的事件通过addListener来监听。
Parameters:
Name Type Description event
module:event.Event 要派发的事件 可查看eventType接口支持的event类型
Example
eventMgr.addListener(EventType.LAYEREVENT_LOADEND,this.redraw.bind(this)); //以上注册了“LAYEREVENT_LOADEND”的监听,dispatch派发后,既可以监听到并响应回调函数。 eventMgr.dispatch(new hmap.event.Event(EventType.LAYEREVENT_LOADEND));
-
fire(event)
-
派发事件 派发的事件通过register 来监听
Parameters:
Name Type Description event
DomEvent dom事件类型
-
register(eventType, callback)
-
添加事件监听,用来注册鼠标键盘类事件监听。
支持的事件类型:
1."MAPMOUSEEVENT_CLICK": 地图上鼠标单击触发
2."MAPMOUSEEVENT_DOUBLECLICK": 地图上鼠标双击触发
3."MAPMOUSEEVENT_MOUSEDOWN": 地图上鼠标按下触发
4."MAPMOUSEEVENT_MOUSEMOVE":" 地图上鼠标移动触发
5."MAPMOUSEEVENT_MOUSEOUT": 鼠标移出地图触发
6."MAPMOUSEEVENT_MOUSEOVER": 鼠标在地图上滑动触发
7."MAPMOUSEEVENT_MOUSEUP": 地图上鼠标抬起触发
8."MAPMOUSEEVENT_MOUSEWHEEL": 地图上鼠标滚轮滚动触发
9."MAPTOUCHEVENT_TOUCHSTART": 手指在地图上触摸开始时触发
10."MAPTOUCHEVENT_TOUCHMOVE": 手指在地图上移动时触发
11."MAPTOUCHEVENT_TOUCHEND": 手指在地图上移动结束时触发
12."MAPKEYEVENT_KEYDOWN": 键盘按下时触发
13."MAPKEYEVENT_KEYUP": 键盘抬起时触发Parameters:
Name Type Description eventType
EventType 鼠标事件类型,参照EventType下的定义。
callback
function 事件回调函数
Example
map.event.register(EventType.MAPMOUSEEVENT_DOUBLECLICK,mapDbClickHandler);
-
removeListener(eventType, callback)
-
移除事件监听,用来移除通过addListener添加的事件监听,注意只有在和注册事件时调用addListener方法传入的eventType和callback参数都一致时才能取消注册事件
Parameters:
Name Type Description eventType
EventType 事件类型
callback
function 注册事件监听的回调函数
Example
evtMgr.removeListener(EVENTTYPE.MAPEVENT_ZOOMEND,function(evt){console.log(evt);});
-
unRegister(eventType, callback)
-
移除事件监听 用来移除通过register添加的事件监听,注意只有在和注册事件时调用register方法传入的eventType和callback参数都一致时才能取消注册事件
Parameters:
Name Type Description eventType
EventType 事件类型,具体类型参照EventType中的枚举事件类型.
callback
function 通过register注册的事件监听的回调函数
Example
eventMgr.unRegister(EventType.MAPMOUSEEVENT_DOUBLECLICK,mapDbClickHandler);