确认的Google Maps API BUG

4 views
Skip to first unread message

马日拉

unread,
Aug 20, 2007, 8:01:31 AM8/20/07
to Google 地图 API 讨论组
经过这几天的不断调试,终于可以确定这是Google Maps API 的BUG,英文版我不清楚,中文版肯定是BUG,看贴的就不要说是我自己程序
的问题了,我已经彻底检查过了。

BUG描述:

1、用GMarkerManager 在地图上添加N个的标注;
2、用GMap2的的clearOverlay() 清除这些标注;
3、用GMarkerManager重新在地图上添加M个标注;
4、随意拖动地图。

这时,你会发现,被清除的N个标注中的一些,又回到了地图上,继续随意拖动地图,最终所有N个标注都回到了地图上。


1、用GMarkerManager 在地图上添加N个的标注;
2、为每一个标注在网页中添加一个调用其方法(例如:openInfoWindow)的超链接。
3、随意点击这些超链接。

正常情况下,地图移动到指定的标注处并显示一个InfoWindow。但若前后两次点击的超链接对应的标注距离稍远,可能引发map API的js文件
中产生一个null值的错误,在IE上导致脚本运行中断,并可能弹出调试窗口。


以上如果将 GMarkerManager 方式添加标注,改为GMap2.addOverlay方式一个一个添加,就不会有任何问题。但后者在标注数
量比较多的情况下,会导致网页加载极慢。

请Google的工作人员看看这个问题吧,我之前的那篇也没有相关人员来看一下回复一下,只看到几个冷嘲热讽的网友回帖,真是寒心。

zhang....@gmail.com

unread,
Aug 20, 2007, 10:27:39 AM8/20/07
to Google 地图 API 讨论组
呵呵,我编程至今已经有25年了,这期间何止一次质疑过别人的代码有错,包括怀疑Microsoft C/C++的库函数错误,最近也怀疑过GMap
API的问题,但是仔细调试代码后最终都发现问题出在自己的代码。
API当然有可能出错,但是我相信API代码的测试肯定比我们自己的代码更加彻底,因此在出现难以确定的问题时,我现在一般倾向于质疑自己的代码。
单从你简单的描述,不可能分析出是谁的代码问题,要知道错误往往都是在最细微之处,越顽固的错误越细微。这是考验程序员耐心的时候。
如果你坚持认为是GMap API的问题,不妨把你的完整代码放出来大家看看,也许能够发现问题所在。

geogle

unread,
Aug 20, 2007, 8:36:08 PM8/20/07
to Google-Map...@googlegroups.com
说的有理。虽然我编程时间没有你那么长,我的体会也是一样。

从学计算机开始是15年,从真正编程开始是10年,最早是Fortran,然后是dbase3->foxbase->Foxpro

后来是VB->VC++ --->Java+XML----->JavaScript,现在是C++C#和AJAX
--
@ Gmail.com

滋文苏

unread,
Aug 21, 2007, 5:58:35 AM8/21/07
to Google-Map...@googlegroups.com
看来都是骨灰级啊

Zhang Jingjun

unread,
Aug 21, 2007, 9:58:07 AM8/21/07
to Google-Map...@googlegroups.com
呵呵,算不上骨灰级,因为当中中断过几年,去做技术管理了,结果错过了发展最快的几年。去年底为了自己的网站重新开始学语言,发现差距巨大,但是乐趣也是巨大:-)
--
阿图仔www.artozi.com
上海市中山北路3856弄2号中环大厦2506室
+86 (21) 52680420
MSN: jjzha...@hotmail.com

luozhiyu

unread,
Aug 23, 2007, 5:28:36 AM8/23/07
to Google 地图 API 讨论组
如果可以提供一个测试代码,比如
function test()
{
call GMarkerManager N times...
.....
clearOverlay()
}
然后稍微描述下重现的过程,肯定很多人会帮助你的

马日拉 写道:

Reply all
Reply to author
Forward
0 new messages