加载OpenLayers库及其依赖项(Google和OSM)是否可以同步?

时间:2012-11-29 12:47:36

标签: javascript google-maps-api-3 openlayers openstreetmap

我构建了一个AJAX应用程序,并拥有使用OpenLayers的应用程序的专用部分。

目前,我的Application.html文件中包含以下内容,因此它将包含在应用程序启动时:

<script src="http://openlayers.org/api/2.11/OpenLayers.js"></script>
<script src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script src="http://www.openstreetmap.org/openlayers/OpenStreetMap.js"></script>

现在我想在需要时加载所有这些东西,因为它的大小约为500-1000kb。但我不知道该怎么做。

我尝试了什么:

  1. 加载OpenLayers.js并在其回调中:...
  2. ...加载GoogleMaps.js和OpenStreetMap.js。当两者都完成时......:
  3. ...显示我的地图。
  4. 有时它可以正常工作,但大部分时间都没有,因为:GoogleMaps.js和OpenStreetMap.js有一些额外的.js,.css,.png等依赖项,它们独立于我的回调加载。

    这意味着:3 .js文件已完成加载,回调告诉我的应用程序显示地图,但在后台,这些.js文件仍然获取使用OpenLayers所需的其他内容。

    有没有办法解决这个问题?

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

也许你可以试试GWT-OpenLayers。

https://bitbucket.org/gwtopenlayers/gwt-openlayers