Javascript Google Maps Api Marker setOptions()更改图标
我想在被绘制多边形选择时更改标记图标。在addMarker()中,从JSON数据解析标记并将其推入allMarkers数组。未选中时图标为红色,选中时图标将变为白色Javascript Google Maps Api Marker setOptions()更改图标,javascript,google-maps-api-3,Javascript,Google Maps Api 3,我想在被绘制多边形选择时更改标记图标。在addMarker()中,从JSON数据解析标记并将其推入allMarkers数组。未选中时图标为红色,选中时图标将变为白色 function addMarker(lat,lng,i){ var myLatlng = new google.maps.LatLng(lat,lng); var marker = new google.maps.Marker({ position: myLatlng, icon:
function addMarker(lat,lng,i){
var myLatlng = new google.maps.LatLng(lat,lng);
var marker = new google.maps.Marker({
position: myLatlng,
icon: "http://labs.google.com/ridefinder/images/mm_20_red.png",
map: map
});
marker.shapeId = '0';
allMarkers.push(marker);
}
function selectMarkersInPoly() {
alert(allMarkers.length)
for (var i=0; i < createdShapes.length; i++) {
for (var j=0; j < allMarkers.length; j++){
var latlong = allMarkers[j].getPosition();
if(google.maps.geometry.poly.containsLocation(latlong, createdShapes[i]) == true) {
allMarkers[j].shapeId = createdShapes[i].id;
allMarkers[j].setOptions({
icon : "http://labs.google.com/ridefinder/images/mm_20_white.png"
});
}
}
}
}
功能添加标记器(lat、lng、i){
var mylatng=new google.maps.LatLng(lat,lng);
var marker=new google.maps.marker({
职位:myLatlng,
图标:“http://labs.google.com/ridefinder/images/mm_20_red.png",
地图:地图
});
marker.shapeId='0';
所有标记。推(标记);
}
函数selectMarkersInPoly(){
警报(allMarkers.length)
对于(var i=0;i
selectMarkersInPoly()有什么问题???谢谢你的帮助 这不是javascript匿名对象的正确语法:
allMarkers[j].setOptions({
icon = "http://labs.google.com/ridefinder/images/mm_20_white.png"
});
(我认为在javascript控制台中会出现javascript错误)
这应该起作用:
allMarkers[j].setOptions({
icon: "http://labs.google.com/ridefinder/images/mm_20_white.png"
});
是的,谢谢。那只是一个虚假的错误。我应该使用javascript控制台。