2014-10-01 66 views
0

我正在使用Google Maps API v3,并且想知道我们可以从事件获得哪些属性?我到处搜索包括官方文档,但找不到任何东西。我的代码示例如下:从Google地图V3中的onClick事件获取属性

for (var i = 0; i < polygons.length; i++) { 
        polygons[i].setMap(map); 
        google.maps.event.addListener(polygons[i], 'click', function(event) { 
        var contentString = '<b>Test polygon</b><br>' + 
        'Clicked location: <br>'+ event.latLng.lat() + 
        '<br>'; 
         infoWindow.setContent(contentString); 
         infoWindow.setPosition(event.latLng); 

         infoWindow.open(map); 
        }); 
       } 

多边形数组中有很多我创建的多边形。我可以通过event.latLng.lat()获得纬度。我还能用这种方式获得什么?我可以在多边形数组中获得我的多边形的位置吗?或从它的任何其他信息? 我知道我可以用vertices = this.getPath();得到多边形顶点...

+1

你有没有尝试过的console.log(事件),看看哪些属性似乎在那里? – HeatherEMSL 2014-10-01 11:17:48

回答

0

A google.maps.Polygon点击事件返回一个PolyMouseEvent对象。请注意,“PolyMouseEvent”特定属性仅在可编辑多边形上可用。

记录在案性质:

  • 边缘|数字|如果事件发生在可编辑多边形的中点上,则事件发生时光标下方路径内边缘的索引。
  • 路径|数字|事件发生时光标下方路径的索引,如果事件发生在顶点并且多边形可编辑。否则未定义。
  • vertex |数字|事件发生时光标下方顶点的索引,如果事件发生在顶点上并且折线或多边形是可编辑的。如果事件不在顶点上发生,则该值未定义。

此对象扩展了MouseEvent

属性

  • 经纬度| LatLng |事件发生时位于光标下方的纬度/经度。
1

要在任何事件上设置或获取多边形属性,只需在回调的作用域中使用“this”关键字,此处将=点击多边形。

例如:任何财产或方法可像

this.fillColor 

将让你回来字符串类型,颜色由“this.fillColor”,但它应该有执行的回调之前或者可以说,外监听器。

您也可以使用这样

set("key", value); 

polygons[i].set("length", polygons[i].length); 

的设置方法与this.length设置自己的属性,任何形状,然后你得到它的点击回调返回

相关问题