标记setIcon方法奇怪地破坏标记对象

时间:2013-06-14 14:56:38

标签: javascript google-maps-api-3

请参阅http://www.milebymile.com/main/highway-1777.html

转到右侧导航栏并按下露营地+以查看各种露营地。点击露营地。

第一个警报显示setIcon之前的getIcon网址。在setIcon显示未定义之后的第二个getIcon警报,因为标记现在显示为未定义。

标记发生变化,因此marker.setIcon正在工作,但之后会触发。无法再次引用相应的标记。

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

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

1 个答案:

答案 0 :(得分:1)

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

所以这些陈述中的第二个:

var old_icon_url = marker.getIcon().url;    
var new_icon_url = old_icon_url.replace(".png","_selected.png");

生成错误,执行停止,因此您看不到警报。

错误(在chrome中):

Uncaught TypeError: Cannot call method 'replace' of undefined mapGenerate.js:111