使用map、panel属性后,POI在地图中对应的Marker被点击时触发
时间: 2024-02-23 11:02:50 浏览: 139
微信小程序使用map组件实现检索(定位位置)周边的POI功能示例
在高德地图中,当使用 `map` 和 `panel` 属性进行检索时,可以通过监听 `AMap.event.addListener` 方法的 `click` 事件来实现 POI 在地图中对应的 Marker 被点击时触发。具体实现步骤如下:
1. 创建地图和 PoiSearch 对象:
```
var map = new AMap.Map('container', {
zoom: 10,
center: [116.39, 39.9]
});
var poiSearch = new AMap.PoiSearch({
city: '北京市',
map: map,
panel: 'panel'
});
```
2. 执行检索操作:
```
poiSearch.search('餐厅');
```
3. 监听 `click` 事件:
```
AMap.event.addListener(poiSearch, 'markerClick', function(e) {
var infoWindow = new AMap.InfoWindow({
content: '<h3>' + e.target.getTitle() + '</h3><p>' + e.target.getAdcode() + '</p>'
});
infoWindow.open(map, e.target.getPosition());
});
```
在这个例子中,`markerClick` 事件用于监听地图中 Marker 被点击的事件。在监听函数中,通过 `AMap.InfoWindow` 创建一个信息窗体,并通过 `getTitle` 和 `getAdcode` 方法获取 Marker 的标题和区域编码,最后通过 `open` 方法将信息窗体添加到地图上。
阅读全文