【问题标题】:google map api does not load when script in on same html page当脚本在同一个 html 页面上时,谷歌地图 api 不加载
【发布时间】:2013-09-26 08:08:22
【问题描述】:

可能有简单的原因,但我不明白,所以我在这里问 -

  1. 我按照https://developers.google.com/maps/tutorials/fundamentals/adding-a-google-map 的说明在我的简单 html 网站中以简单的方式使用谷歌地图 和 http://www.w3schools.com/googleAPI/google_maps_basic.asp ,其中谷歌地图脚本 src ( src="http://maps.googleapis.com/maps/api/js?sensor=false" ,我已经尝试过使用键和不使用键)和加载函数中的 initialize() 和 addDomListener在同一页面上,我使用 .html 扩展名保存该页面(也尝试在 wamp 上使用 .php)。

  2. 1234563页面。
  3. 是不是因为 html 或 php 无法处理该 js 部分,而它在不同的 js 包装器中时有效。或者还有别的吗?

【问题讨论】:

  • 你的代码是什么样的?
  • 您引用的两个示例都适用于我google examplew3schools example,唯一的修改是从 w3schools 示例中删除密钥。

标签: javascript html google-maps-api-3


【解决方案1】:
<!DOCTYPE html>
<html>
  <head>
    <title>Simple Map</title>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
    <meta charset="utf-8">
    <style>
      html, body, #map-canvas {
        margin: 0;
        padding: 0;
        height: 100%;
      }
    </style>
    <script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
    <script>
var map;
function initialize() {
  var mapOptions = {
    zoom: 8,
    center: new google.maps.LatLng(-34.397, 150.644),
    mapTypeId: google.maps.MapTypeId.ROADMAP
  };
  map = new google.maps.Map(document.getElementById('map-canvas'),
      mapOptions);
}

google.maps.event.addDomListener(window, 'load', initialize);

    </script>
  </head>
  <body>
    <div id="map-canvas"></div>
  </body>
</html>

试试这个脚本

【讨论】:

  • 我理解其中的区别......在那些教程中使用了 var map= new google..etc,而在你的 var map 中声明在初始化函数之外,这就是我在 .js 包装器中使用的方式.现在它在同一页面上工作,可能api版本有所不同,教程在旧版本上。谢谢大佬!
  • @amitfreeman:“差异”与答案中的代码没有任何区别,结果与 var map= new google..... 相同。您的代码一定有其他问题(我们永远不会知道是什么,除非您向我们展示您的代码)
猜你喜欢
  • 2016-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-21
  • 2012-12-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多