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. 谷歌地圖V3錯誤
- 8. 谷歌地圖API V3 2.0.6
- 9. GWT +谷歌地圖API V3
- 10. 谷歌地圖v3 OverlayView.getProjection()
- 11. 谷歌地圖API V3 Over_Query_Limit
- 12. 谷歌地圖v2與v3
- 13. 谷歌地圖V3 - 英里
- 14. 問題與谷歌地圖V3和jQuery
- 15. 谷歌地圖V3使用IE7和IE8
- 16. Javascript v3谷歌地圖旋轉地圖
- 17. 您最喜愛的谷歌地圖第三方API V3是什麼?爲什麼?
- 18. openinfowindowhtml在谷歌地圖後,從服務器檢索
- 19. 演示顯示多個谷歌地圖(谷歌地圖API v3)
- 20. 谷歌地圖V3自定義地圖標記圖標但是從谷歌
- 21. 谷歌地圖V3,錯誤消息「谷歌是未定義」
- 22. 獲取谷歌App Engine和谷歌地圖API V3說話
- 23. 谷歌地圖API v2谷歌地圖API V3 Android版應用程序OpenStreetMap之間最好的是什麼?
- 24. 谷歌地圖中的mapload是什麼?
- 25. 谷歌地圖API V3 - 在街景
- 26. 谷歌地圖api v3在asp.net 4頁
- 27. 如何隱藏在谷歌,地圖V3
- 28. 谷歌地圖V3在隱藏div
- 29. 谷歌地圖v3 - 土地類型
- 30. 地理位置與谷歌地圖V3
應該有,我使用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