2

我正在尝试将 Google Map 添加到 jquery.mobile 站点 javascript 和 Google Maps API。问题是每次我加载地图时,大部分地图都是灰色的。我做了一些研究,显然我必须添加命令:

google.maps.event.trigger(map, 'resize');

但在过去的几个小时里我一直在摆弄这个,我似乎无法让它工作。这是我正在使用的代码:

      var myLatlng = 新 google.maps.LatLng(34.310774,66.225586);

      var mapOptions = {
        中心:myLatlng,
        mapTypeId:google.maps.MapTypeId.ROADMAP
      }

      var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);

      // 边界
      var southWest = 新 google.maps.LatLng(31.207164,61.347656);
      var northEast = new google.maps.LatLng(37.617713,69.785156);
      var bounds = new google.maps.LatLngBounds(southWest,northEast);


      map.fitBounds(边界);
      google.maps.event.trigger(map, 'resize');
4

2 回答 2

4

要解决该问题,您需要:

  1. 确保显示地图的 div 具有有效的大小,如果它被隐藏,它将具有零大小,您需要先显示 div,然后它才会具有有效的大小。如果使用百分比调整大小,请确保其所有父元素都具有百分比大小或特定大小(有关详细信息,请参阅 Mike Williams 的 Google Maps API v2 教程)。

  2. 一旦它有一个大小初始化地图(如果你还没有)

  3. 如果它已经被初始化,触发它的 resize 事件。

  4. 触发调整大小事件后,您可能需要设置地图的中心。

你没有提供足够的信息来看看你哪里出错了。

于 2013-01-10T23:07:03.117 回答
0

在开始编码之前,您应该首先让 Google Map Widget 工作。您只需要密钥 ID、纬度和经度并使用应用程序设计器。默认情况下建议的缩放设置为 8 就足够了。以下是一些细节: http ://hodentekmobile.blogspot.com/2016/07/intel-xdk-controls-6-using-google-map.html

于 2016-07-21T00:16:03.837 回答