Javascript marker setIcon方法奇怪地破坏marker对象

Javascript marker setIcon方法奇怪地破坏marker对象,javascript,google-maps-api-3,Javascript,Google Maps Api 3,看 转到右侧导航栏并按CampGrand+以查看营地选择。点击营地 第一个警报显示setIcon之前的getIcon url。setIcon之后的第二个getIcon警报显示undefined,因为标记现在显示为undefined 标记会更改,因此marker.setIcon会工作,但之后会触发。无法再次引用相应的标记 我做错什么了,还是这是一个错误?提前谢谢 我使用的是Chrome版本28.0.1500.44 beta-m。问题不是标记正在被销毁,而是marker.getIcon方法不再返回任

转到右侧导航栏并按CampGrand+以查看营地选择。点击营地

第一个警报显示setIcon之前的getIcon url。setIcon之后的第二个getIcon警报显示undefined,因为标记现在显示为undefined

标记会更改,因此marker.setIcon会工作,但之后会触发。无法再次引用相应的标记

我做错什么了,还是这是一个错误?提前谢谢


我使用的是Chrome版本28.0.1500.44 beta-m。

问题不是标记正在被销毁,而是marker.getIcon方法不再返回任何带有.url属性的内容

第二种说法是:

var old_icon_url = marker.getIcon().url;    
var new_icon_url = old_icon_url.replace(".png","_selected.png");
生成错误并停止执行,因此您不会看到警报

错误(在chrome中):


请发布有问题的代码,而不仅仅是一个链接。您是如何尝试再次引用标记的?您是否尝试了一个而不是不推荐的google.maps.MarkerImage?不确定这有什么关系,但您最初使用MarkerImage定义图标,但通过设置URL进行更改。解决方案:谢谢geocodezip。你的建议使我找到了解决办法。我必须至少用url和锚来定义图标。如果只是将字符串传递给它,它将创建标记,但不再在标记对象中维护url引用。一定是虫子什么的。无论如何,通过使用图标而不是字符串引用,对象保持不变。marker.setIcon({url:“/images/mapIcons/”+icontypeoi+“_selected.png”,锚定:google.maps.Point(7,7)})
Uncaught TypeError: Cannot call method 'replace' of undefined mapGenerate.js:111