百度地圖 彈窗效果,標注總顯示在左上角


 現象一: 地圖彈窗先隱藏 ->顯示地圖彈窗->設置marker -> 設置centerAndZoom

  看效果標注層定點位置有問題(因顯隱),中心點還是相對於左上角。(不知道是不是這樣,先標記待查)

 現象二: 地圖彈窗先隱藏->設置marker -> 設置centerAndZoom ->顯示地圖彈窗

隱藏時左上角是地圖中心點,所以標注在左上角(上圖為了展示效果,手動將地圖向右下角移動了一下)

 解決:每次顯示地圖之前都需要重新初始化地圖(即需要重新執行 map = new BMap.Map("dituContent");...),初始化的內容可以如下:

    var map = new BMap.Map("dituContent");
        var point = new BMap.Point(longitude, latitude);
        map.centerAndZoom(point, opts.level);            
        mapGeo = new BMap.Geocoder();

        map.enableDragging();// 啟用地圖拖拽事件,默認啟用(可不寫)
        map.enableScrollWheelZoom();// 啟用地圖滾輪放大縮小
        map.enableDoubleClickZoom();// 啟用鼠標雙擊放大,默認啟用(可不寫)
        map.enableKeyboard();// 啟用鍵盤上下左右鍵移動地圖

        map.addEventListener("click", function(e) {
        
        })

        localSearch = new BMap.LocalSearch(map);
        localSearch.enableAutoViewport(); // 允許自動調節窗體大小    

 


免責聲明!

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



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