百度地圖給指定的點加標簽


本文介紹利用百度地圖api先顯示地圖,然后在地圖上標記一個或者多個點,然后將每個點的自定義標簽用tip的方式展現出來。

效果截圖:

 

代碼:

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
    <style type="text/css">
        body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;font-family:"微軟雅黑";}
    </style>
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你的key"></script>
    <title>根據城市名設置地圖中心點</title>
</head>
<body>
    <div id="allmap"></div>
</body>
</html>
<script type="text/javascript">
    //新建地圖點的集合
var points = [  
    {"lng":114.046304,"lat":22.628841,"url":"http://www.baidu.com","id":1,"name":"p1"},
]; 
//創建標注點並添加到地圖中
function addMarker(points) {
    //循環建立標注點
    for(var i=0, pointsLen = points.length; i<pointsLen; i++) {
        var point = new BMap.Point(points[i].lng, points[i].lat); //將標注點轉化成地圖上的點
        var marker = new BMap.Marker(point); //將點轉化成標注點
        map.addOverlay(marker);  //將標注點添加到地圖上
//      //添加監聽事件,點擊后顯示tip
//      (function() {
//          var thePoint = points[i];
//          marker.addEventListener("click",
//              function(){
//              showInfo(this,thePoint);
//          });
//      })();
        //直接顯示tip,不添加事件
        showInfo(marker,points[i]);
    }
}
function showInfo(thisMarker,point) {
    //獲取點的信息
    var sContent = 
    '<ul style="margin:0 0 5px 0;padding:0.2em 0">'  
    +'<li style="line-height: 26px;font-size: 15px;">'  
    +'<span style="width: 80px;display: inline-block;">我的地址:</span><a href="'+point.url+'">嘉熙業廣場 <a></li>'  
    +'</ul>';
    var infoWindow = new BMap.InfoWindow(sContent); //創建信息窗口對象
    thisMarker.openInfoWindow(infoWindow); //圖片加載完后重繪infoWindow
}
//創建地圖
var map = new BMap.Map("allmap");    
map.centerAndZoom(new BMap.Point(114.046304,22.628841), 19);  // 設置中心點
map.setCurrentCity("深圳");          //設置為深圳
map.addControl(new BMap.MapTypeControl());   
map.enableScrollWheelZoom(true);     
addMarker(points);
</script>
</script>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM