var polygon = new GPolygon(polylines[0],"#FFFFFF", 1, 1.0, color,opacity);
polygon.hid = this.id;
polygon.heat = this.heat;
google.maps.event.addListener(polygon, 'click', function(point) {
HoodsUnselect(active_hood_id);
active_hood_id = polygon.hid;
polygon.setOptions({fillColor: '#2948e4', fillOpacity: 0.50 });
//polygon.setFillStyle({ color:'#2948e4',opacity:'0.50' });
if (point) {
map.openInfoWindowHtml(point, the_list); // open info window where user clicked
} else {
map.openInfoWindowHtml(polygon.getBounds().getCenter(), the_list); // open info window at the center of polygon
}
});
4
A
回答
15
除了Tony's answer之外,v3 API中沒有openInfoWindowHtml()
方法。您必須創建一個InfoWindow
對象,您可以在其中調用open()
或close()
方法。通常你會想只是一個InfoWindow
對象,如果你想在同一時間只有一個可見:
var infoWindow = new google.maps.InfoWindow();
google.maps.event.addListener(yourOverlay, 'click', function() {
infoWindow.setContent('Some info on yourOverlay');
infoWindow.open(map);
});
的V2 API和v3 API之間的主要區別,當涉及到信息窗口的事實是,在V3 API可以同時打開多個信息窗口。這在v2 API中是不可能的。要打開多個信息窗口,您希望創建多個InfoWindow
對象,而不是僅針對所有標記(疊加層)。
至於多邊形,這是如何創建V3 API中的多邊形(從示例mentioned by @Tony借用):
var bermudaTriangle = new google.maps.Polygon({
paths: [
new google.maps.LatLng(25.774252, -80.190262),
new google.maps.LatLng(18.466465, -66.118292),
new google.maps.LatLng(32.321384, -64.75737)
],
strokeColor: "#FF0000",
strokeOpacity: 0.8,
strokeWeight: 3,
fillColor: "#FF0000",
fillOpacity: 0.35
});
bermudaTriangle.setMap(map);
2
的V3等效GPolyline的是Polyline和GPolygon是Polygon。這些都包含您可以聽取的點擊事件。
更好的是,Google提供了Polyline examples和Polygon examples,其中包括one that listens for clicks and opens an infowindow。
相關問題
- 1. 谷歌地圖:openInfoWindowHtml與jQuery問題
- 2. 谷歌地圖openInfoWindowHTML數組問題
- 3. 爲什麼「事件是未定義」在谷歌地圖-V3
- 4. 如何把谷歌地圖v3的fancybox谷歌地圖v3
- 5. 谷歌地圖API V3在地圖
- 6. 谷歌地圖API V3瓷磚不渲染 - 什麼是交易?
- 7. 什麼是GWT 2.5最好的谷歌地圖V3 API?
- 8. jquery和谷歌地圖v3 dragstart和dragend
- 9. 在谷歌地圖v3中更改谷歌地圖中心
- 10. OVER_QUERY_LIMIT谷歌地圖api v3
- 11. 谷歌地圖v3 requestFullScreen
- 12. GWT - v3谷歌地圖infowindow
- 13. 谷歌地圖v3距離
- 14. GWT +谷歌地圖API V3
- 15. overlayMouseTarget谷歌地圖api v3
- 16. 谷歌地圖V3 - 英里
- 17. 谷歌地圖v3問題
- 18. 谷歌地圖v2與v3
- 19. 谷歌地圖v3問題
- 20. 谷歌地圖v3 OverlayView.getProjection()
- 21. 打印谷歌地圖V3
- 22. 谷歌地圖V3錯誤
- 23. 谷歌地圖JavaScript API v3
- 24. 谷歌地圖API V3 2.0.6
- 25. 谷歌地圖API V3 Over_Query_Limit
- 26. 問題與谷歌地圖V3和jQuery
- 27. 谷歌地圖V3信息框和closeBox
- 28. 谷歌地圖V3,WordPress的和jQuery
- 29. jQuery和谷歌地圖API V3 - 入門
- 30. 谷歌地圖V3使用IE7和IE8
應該有,我使用v3和信息窗口代碼中的問題。打開獲取兩個參數:'infoWindow.open = function(a,b){this.set(「anchor」,b); this.set(「map」,a)}' – 2013-06-27 15:48:59
@Mehdi Karamosly:第二個參數是可選的。如果通過,這是信息窗口將彈出的標記。如果沒有指定,它會出現在某個默認位置(左上角)。 (https://developers.google.com/maps/documentation/javascript/infowindows#open) – 2014-04-27 21:34:53