在項目開發(fā)中,因為是C/S原因,要展示百度地圖,只能內(nèi)嵌WebBrowser來實現(xiàn),遇到的問題是當點擊Marker標記展示其對應的InfoWindow的時候,在WebBrowser內(nèi)第一次點擊時候能夠很好展示,而當再在此點擊的時候InfoWindow就會很糟糕,變形;
如圖:

搜索一番也未找到原因,已經(jīng)發(fā)郵件給百度地圖郵箱咨詢也暫未得到答復,是不是Bug就不得而知;
后面投機取巧的發(fā)現(xiàn)強制設置InfoWindow的寬度能夠解決問題,代碼如下:
/**說明:為Marker標記當點擊的時候,彈出提示框*marker:需要提示的Marker*infoType: 類型*/function bindInfoWindows(marker, infoType) { if (!infoWindow) { infoWindow = new BMap.InfoWindow(); } marker.addEventListener("click", function() { if (infoType == 'cab' || infoType == 'pole') infoWindow.setWidth(450); var content = setupMarkerContens(marker, infoType, false); infoWindow.setContent(content); this.openInfoWindow(infoWindow); });}
希望有所幫助!
新聞熱點
疑難解答