我要在百度地图api上 标记多个地点下面显示名称 并能调用方法更新它 js怎么写
时间: 2024-03-09 16:44:22 浏览: 46
你可以通过以下步骤实现在百度地图API上标记多个地点并显示名称:
1. 在HTML文件中引入百度地图API的JavaScript文件。
```html
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你的密钥"></script>
```
2. 创建地图容器
```html
<div id="map"></div>
```
3. 在JavaScript文件中创建地图实例,并设置地图中心点和缩放级别。
```javascript
var map = new BMap.Map("map");
var point = new BMap.Point(116.404, 39.915);
map.centerAndZoom(point, 15);
```
4. 创建标记,并添加到地图上。
```javascript
var marker = new BMap.Marker(point);
map.addOverlay(marker);
```
5. 创建信息窗口,并设置内容和位置。
```javascript
var infoWindow = new BMap.InfoWindow("这是一个信息窗口", { width: 250, height: 100 });
marker.addEventListener("click", function () {
map.openInfoWindow(infoWindow, point);
});
```
6. 创建多个标记和信息窗口,并在地图上显示。
```javascript
var locations = [
{ name: "地点1", point: new BMap.Point(116.404, 39.915) },
{ name: "地点2", point: new BMap.Point(116.414, 39.915) },
{ name: "地点3", point: new BMap.Point(116.424, 39.915) },
];
for (var i = 0; i < locations.length; i++) {
var marker = new BMap.Marker(locations[i].point);
map.addOverlay(marker);
var infoWindow = new BMap.InfoWindow(locations[i].name, { width: 250, height: 100 });
marker.addEventListener("click", function () {
map.openInfoWindow(infoWindow, locations[i].point);
});
}
```
注意:在百度地图API使用过程中,需要替换代码中的密钥为你自己的密钥。
阅读全文