高德地圖js API實現鼠標懸浮點標記時顯示彈窗詳情,點擊點標記放大地圖操作


<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
    <title>自定義窗體</title>
    <link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css"/>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/bootswatch/3.4.0/cerulean/bootstrap.min.css" rel="stylesheet">
    <script type="text/javascript" src="http://webapi.amap.com/maps?v=1.3&key=139e66ee00b2edc5c7ad3fd640b60c07"></script>
</head>
<body>
<div id="container"></div>
<script type="text/javascript">
    //初始化地圖對象,加載地圖
    var map = new AMap.Map("container", {resizeEnable: true});
    var lnglats = [
        [116.968904, 39.999923],
        [116.382122, 39.921176],
        [116.372122, 39.921176],
        [116.968904, 39.900001],
        [117.418258, 39.914600]
    ];
    
    
    var infoWindow = new AMap.InfoWindow({offset: new AMap.Pixel(0, -30)});
    for (var i = 0, marker; i < lnglats.length; i++) {
        var marker = new AMap.Marker({
            position: lnglats[i],
            map: map
        });
        marker.content  = '<h4>我是第' + (i + 1) + '個XXX</h4>';
        marker.content += '<h6>經度:'+lnglats[i][0]+'</h6>';
        marker.content += '<h6>緯度:'+lnglats[i][1]+'</h6>';
        marker.content += '<button class="btn btn-success btn-xs">歷史軌跡</button>';
        marker.content += '<button class="btn btn-warning btn-xs">實時跟蹤 </button>';
        marker.content += '<button class="btn btn-danger btn-xs">設置</button>';
 
        marker.on('mouseover', infoOpen);
        //注釋后打開地圖時默認關閉信息窗體
        //marker.emit('mouseover', {target: marker});
        marker.on('mouseout', infoClose);
        marker.on('click', newMAp);
    }  
    map.setFitView();
 
 
    
    //鼠標點擊事件,設置地圖中心點及放大顯示級別
    function newMAp(e) {
        //map.setCenter(e.target.getPosition());
        map.setZoomAndCenter(12, e.target.getPosition());
        
        var infoWindow = new AMap.InfoWindow({offset: new AMap.Pixel(0, -30)});
        infoWindow.setContent(e.target.content);
        infoWindow.open(map, e.target.getPosition());    
    }
    
    
    function infoClose(e) {
        infoWindow.close(map, e.target.getPosition());
    }
    function infoOpen(e) {
        infoWindow.setContent(e.target.content);
        infoWindow.open(map, e.target.getPosition());
    }
</script>
</body>
</html>

 

 

https://blog.csdn.net/Bameirilyo/article/details/83864222


免責聲明!

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



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