2008-10-22 111 views
1

我有一个谷歌地图突然停止工作,原因不明(我没有触及数月的代码,但是从我们的CMS包装代码可能已经没有企业改变告诉我)。谷歌地图API - GMarker.openInfoWindowHtml()停止工作

http://www.democratandchronicle.com/section/builder

(约地图外讨厌的HTML对不起,大部分是来自我们母公司...)

我已经收窄,到我的drawMarker这部分功能:

GEvent.addListener(marker, 'click', function() { 
    marker.openInfoWindowHtml(html, { maxWidth: 500 }); 
}); 

值得注意的是:

  • alert(html);显示infowindow的正确HTML。
  • 在html变量中的HTML是确实有效。
  • 点击事件正在触发(其中由alert('test');确认)
  • 尽管代码类似,我仍然在同一站点上托管的另一张地图works fine
  • 没有JavaScript错误在Firebug或IE浏览器,我可以看到。

我一直在抨击我的头这一段时间。我错过了什么?

+0

我尽管我改变了API的版本,我仍然无法使它工作的事实有同样的问题。你最终如何解决这个问题? – Omayr 2011-07-26 13:00:47

回答

0

这解决了它自己。我怀疑这个API的更新打破了一两个版本。

+0

你是如何更新api的? – Omayr 2011-07-26 13:01:26

+0

Google不会更新API。 – ceejayoz 2011-07-26 14:06:30

0

尝试强制JavaScript来让你的HTML的一个新的变量:

GEvent.addListener(marker, 'click', function() { 
marker.openInfoWindowHtml(html+'', { maxWidth: 500 }); 
}); 
1

我已经在时间和随机问题与谷歌地图API不止一次已经固定通过返回一个API版本。也就是说,如果你的谷歌地图API的JavaScript字符串列入是这样http://maps.google.com/maps?file=api&v=2.xd&key=XXXXX 变化2.X的东西了几个版本背(背当它工作),像2.132什么

1

尝试:

GEvent.addListener(marker, 'click', function() { 
    this.openInfoWindowHtml(html, { maxWidth: 500 }); 
}); 

记住对象“标记”的范围在你的功能之外

1

我最近有过这个问题,事件处理程序肯定跑了等。原来这里有两个谷歌地图<脚本>标签在页面上的实例。删除一个固定它。