centerandzoom 无效_在bootstrap modal 中加载百度地图的信息窗口失效解决方法
這個問題其實很傻,解決方法沒有任何技術含量,只是記錄下工作中發(fā)生的事。
前陣子給一個汽車集團客戶做了一個經銷商查詢系統(tǒng),其中一個功能是使用地圖標注經銷商店面地址,并且實現(xiàn)導航功能。
頁面演示地址:http://www.lyytqm.com/Dealerships
點擊地址區(qū)域在模態(tài)窗口中顯示百度地圖,并在地圖中標注點位,顯示窗口信息,但信息窗口展示的信息頻繁失效,僅顯示名稱。
更換了各種加載數(shù)據(jù)方式不能解決,在蹲廁所時想到了原因,即可給出解決方法。
原因是bootstrap modal 以及動畫 沒過完全渲染完成的情況下,信息就加載完成,這種待模態(tài)窗口完全渲染后,窗口信息就不會正常顯示。
解決方法是使用shown.bs.modal事件,待完全演染完成窗口后,打插入標注點,以及窗口信息。
代碼如下:
$(‘#map-location-modal‘).on(‘shown.bs.modal‘, function (e) {
_ShowMap(data.lng, data.lat, data.title, data.address, data.telphone, ‘18‘);
})
function _ShowMap(lng, lat, name, addrsee, phone, zoom) {
var message = ‘
‘ + name + ‘
地址:‘ + addrsee + ‘
電話:‘ + phone + ‘
‘+ ‘
‘+ ‘ ‘
+ ‘ ‘
+ ‘ ‘
+ ‘ ‘
+ ‘ ‘
+ ‘ ‘
+ ‘ 導航‘
+ ‘
‘;var map = new BMap.Map("map-container");
var marker = new BMap.Marker(new BMap.Point(lng, lat));
var infoWindow = new BMap.InfoWindow(message);
map.enableScrollWheelZoom(true); //開啟鼠標滾輪縮放
map.centerAndZoom(new BMap.Point(lng, lat), zoom);
map.addControl(new BMap.NavigationControl());
map.addControl(new BMap.MapTypeControl()); //添加地圖類型控件
map.addOverlay(marker);
marker.addEventListener("click", function () {
this.openInfoWindow(infoWindow);
});
marker.openInfoWindow(infoWindow);
}
原文:http://www.cnblogs.com/webdu/p/7824731.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的centerandzoom 无效_在bootstrap modal 中加载百度地图的信息窗口失效解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python中list是什么类型_Pyt
- 下一篇: fastjson safemode_它又