Wou*_*ick 4 google-maps openlayers
当我从OpenLayers 2.12切换到2.13.1时,所有Google Maps图层都停止工作.当我使用图层切换器时,地图区域变为白色.
我在浏览器的开发控制台中看不到任何错误消息,并且所有文件都已成功加载.
我正在创建这样的图层:
var layerGoogleMapsNormal = new OpenLayers.Layer.Google("Google Normal" , { type : google.maps.MapTypeId.ROADMAP, sphericalMercator : true });
var layerGoogleMapsPhysical = new OpenLayers.Layer.Google("Google Physical" , { type : google.maps.MapTypeId.TERRAIN, sphericalMercator : true });
Run Code Online (Sandbox Code Playgroud)
其他层(OSM,WMS)工作正常.
在我写这篇文章时,我发现OpenLayers的例子也不能正常工作.
http://dev.openlayers.org/examples/google.html
可能是谷歌做出了重大改变吗?有没有其他人有同样的问题,有没有人知道解决方案?
备注:我看过OpenLayers3,但它的API非常不同,我认为我们永远无法将所有代码移植到那里.我们无法说服我们的客户为重写所有的映射内容来使用OL3付费,所以我想这个项目永远停留在2.x分支......
我遇到了和你一样的问题.在包含来自Google的js文件的链接中,您必须告诉它在9月15日发生重大变更之前向您发送旧版本.
示例:
正常链接: <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=false"></script>
解决方案链接 <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=false&v=3.20"></script>
目前,最新版本为3.22.对我来说最有效的是与您相同的Openlayers版本3.20.
有关该主题的更多信息:https: //developers.google.com/maps/documentation/javascript/versions
稍后编辑:正如评论中提到的,此修复不再有效.在github问题线程中有人做了补丁修复,但我找不到直接下载的文件,所以我不得不手动将修复程序应用到我的项目中.为了避免其他人这样做,我将在这里添加一个包含修复程序的缩小版本的链接.
归档时间: |
|
查看次数: |
4091 次 |
最近记录: |