百度地图 JSAPI 的事件用于响应用户操作和地图状态变化,例如点击地图、拖拽地图、缩放级别变化等。开发者可以在地图对象上注册事件监听函数,并在回调中读取事件参数来执行业务逻辑。
JSAPI 中的地图、覆盖物等对象都可以通过 addEventListener 监听事件。事件由 API 对象触发,监听函数会接收事件对象作为参数;不同事件的参数字段可能不同,例如地图 click 事件会返回点击位置。
addEventListener 的第一个参数是事件名,第二个参数是事件触发时执行的监听函数。建议使用具名函数,便于后续移除监听。
function handleMapClick(e) {console.log('地图被点击', e);}map.addEventListener('click', handleMapClick);
监听函数的参数通常命名为 e。对于地图 click 事件,可以通过 e.point 获取点击位置对应的经纬度。
function handleMapClick(e) {var point = e.point;alert('点击的坐标:' + point.lng + ', ' + point.lat);}map.addEventListener('click', handleMapClick);
removeEventListener 用于移除事件监听。移除时需要传入相同的事件名和同一个监听函数引用;如果直接传入匿名函数,后续通常无法精确移除。
map.removeEventListener('click', handleMapClick);
地图支持多种事件,通过功能的组合可以实现绝大多数场景下的交互需求。以下是常见的地图事件,完整的事件支持类参考见MapEventMap。
上一篇
下一篇