我有一个脚本,一个接一个地把标记添加到地图上
var marker = new google.maps.Marker({
position: new google.maps.LatLng(51,-117)
});
marker.setIcon(getIconFile(initialIconId));
markers.push(new Array(id,marker)); // id, marker
marker.setMap(map);稍后在脚本中,当我按下自定义按钮时,我希望能够更改标记图标。因此,我从标记数组中通过id获取标记,并调用:
markers[markerIndex].setIcon(getIconFile(newIconId)); // which returns a string url of the icon但是我收到了:TypeError: markersmarkerId.setIcon不是一个函数
我打印markerId,它是有效的,我还打印标记markersmarkerId索引的结果,它返回一个标记对象。我没有其他方法来调试这个--我迷路了!
谢谢
发布于 2013-01-04 15:48:58
似乎您正在将Array推入标记中,而不仅仅是一个元素。
为什么不:
markers = []
markers.push(marker)
markers[markerIndex].setIcon(getIconFile(newIconId));或者如果坚持插入数组:
markers.push(new Array(id,marker));
markers[markerIndex][1].setIcon(getIconFile(newIconId));https://stackoverflow.com/questions/14160165
复制相似问题