百度地图API的第一次接触——标注和信息窗的使用

1.定义js函数,用于在指定位置添加标注,在标注位置添加并打开信息窗口

    function addMarker(point, index){
                      
      // 创建图标对象
                      
      var myIcon = new BMap.Icon("http://api.map.baidu.com/img/markers.png", new BMap.Size(23, 25), {
                      
        offset: new BMap.Size(10, 25),                  // 指定定位位置
                      
        imageOffset: new BMap.Size(0, 0 - index * 25)   // 设置图片偏移
                      
      });
                      
      var marker = new BMap.Marker(point, {icon: myIcon});//使用图标对象创建标注
                      
      map.addOverlay(marker);
                       
      marker.addEventListener("click", function(){         // 标注点击事件监听
                          
           var opts = {
                                  
               width : 250,     // 信息窗口宽度
                                  
               height: 120,     // 信息窗口高度
                                  
               title : "InfoWindow"  // 信息窗口标题
                                  
      }
                                  
      var infoWindow = new BMap.InfoWindow("Hello World!", opts);  // 创建信息窗口对象
                                  
      map.openInfoWindow(infoWindow, point);      // 在标注处打开信息窗口

                          
     });

                      
 }

 

2.随机在地图内生成5个标注

    var bounds = map.getBounds();  //获得地图边界
                      
  
var lngSpan = bounds.maxX - bounds.minX; var latSpan = bounds.maxY - bounds.minY; for (var i = 0; i < 5; i ++) { var point = new BMap.Point(bounds.minX + lngSpan * (Math.random() * 0.7 + 0.15),bounds.minY + latSpan * (Math.random() * 0.7 + 0.15)); //在地图范围内随机生成点 addMarker(point, i);//调用1中js函数 }

3.打开浏览器看效果

转载于:https://www.cnblogs.com/TomSnail/p/4352806.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值