这是打开infoWindow时的样子。打开infoWindow时如何将其置于右上角,是否可以将其设置为纯矩形。
我的代码看起来像这样
var getDirection = new google.maps.InfoWindow({
content: ''
});
var html ='<address><br>'+fromAddress+'</address><p>get directions from:</p><input id="from_Address" type="text" required><button id="go">Go</button><p><br><p id="error_msg" style="color:red;"></p><br>example: 121 belved Rd CA'
getDirection.setContent(html);
getDirection.open(resultsMap);
请帮忙。
答案 0 :(得分:0)
使用第二个参数(锚参数)打开(map?:Map | StreetViewPanorama,anchor?:MVCObject)或设置InfoWindow的位置。
var html ='<address><br>'+fromAddress+'</address><p>get directions from:</p><input id="from_Address" type="text" required><button id="go">Go</button><p><br><p id="error_msg" style="color:red;"></p><br>example: 121 belved Rd CA'
getDirection.setContent(html);
getDirection.open(resultsMap,marker);
答案 1 :(得分:0)
遵循this solution的行,请参阅下面的代码示例:
var center = JSON.parse(JSON.stringify(map.getCenter()));
var boundaries = JSON.parse(JSON.stringify(map.getBounds()));
var newPosition = {lat: center.lat + Math.abs(boundaries.north - center.lat) / 2.75, lng: center.lng};
infoWindow.setContent('<strong>This infowindow should be located near the top, approx in the middle between the top point and the middle point.</strong>');
infoWindow.setPosition(newPosition);
基本上,你可以获得地图的边界,并且你有中心点。您所要做的就是使用这些参数计算新位置。
希望这有帮助。