[英]Gmaps.js stopped working
从一天到另一天,Gmaps.js 库停止工作......我创建了一张地图,上面有 3 个标记,他们有 InfoWindows,我在 InfoWindow 中添加了一个小路由选项,您可以在其中输入您的地址在和 Gmaps 路由你到那个点。
现在,在过去 2 周内没有进行任何更改,我无法再让它工作了:地图加载没有任何问题,但是当我单击标记时,地图会自行终止。
网址如下: http : //gruber.tv/z/#standorte
当我在 Firefox 中加载地图时,我可以看到许多“递归过多”错误,它们都来自 Google 的 main.js
我希望有一个人可以帮助我!
最好的问候 iDave
查看处理每个标记的click
事件的代码:
map.setCenter( e.position.k, e.position.D );
gmaps 中的setCenter()
方法接受纬度和经度参数。 k
和D
看起来像这些名字吗? :-)
我怀疑您在开发代码时通过查看开发人员工具找到了这些属性,对吗? 在该行代码上设置一个断点,并在到达那里时再看一看。
哎呀,那里不再有k
或D
属性了。 现在它具有A
和F
属性。 嗯,这不行。
但是你看到__proto__
属性就在它下面吗? 展开它,您将看到position
对象的可用方法。 注意那里的lat()
和lng()
方法。 这些更有意义,所以试试它们:
map.setCenter( e.position.lat(), e.position.lng() );
这里发生了什么: e.position
是来自 Google Maps API 的LatLng
对象。 API 对象具有许多未记录的内部属性,以及记录的属性和方法。 lat()
和lng()
是从LatLng
对象获取纬度和经度的文档化方法。 您发现的其他属性在 API 内部使用,但并不打算在您自己的代码中使用。 谷歌通过一个“压缩器”运行他们所有的 JavaScript API 代码,它可以任意更改内部名称以缩短代码,但保持记录的公共名称完整无缺。 因此,每隔几周,当他们更新 API 时,任何未记录的内部名称都可能会更改。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.