【问题标题】:Google Distance Matrix API no output谷歌距离矩阵 API 没有输出
【发布时间】:2012-08-09 08:56:32
【问题描述】:

我正在尝试使用距离矩阵 API 来计算两个地点之间的距离。 因为这是我第一次尝试使用这个 API,所以我随便复制了在 Google Documentation's page 上找到的代码并粘贴到我的页面上。 但是,我看不到任何类型的输出,也不知道为什么。 这是my page

这是来源:

<!DOCTYPE html> 
<html> 
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

<!-- Google Api -->
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=AIzaSyDDMkiaVfr1y0QCsx_qUsJKIBAWpkyXZrY&sensor=false">
</script>

<script type="text/javascript">
var origin1 = new google.maps.LatLng(55.930385, -3.118425);
var origin2 = "Greenwich, England";
var destinationA = "Stockholm, Sweden";
var destinationB = new google.maps.LatLng(50.087692, 14.421150);

var service = new google.maps.DistanceMatrixService();
service.getDistanceMatrix(
  {
    origins: [origin1, origin2],
    destinations: [destinationA, destinationB],
    travelMode: google.maps.TravelMode.DRIVING,
    avoidHighways: false,
    avoidTolls: false
  }, callback);

function callback(response, status) {
  if (status == google.maps.DistanceMatrixStatus.OK) 
  {
    var origins = response.originAddresses;
    var destinations = response.destinationAddresses;
    document.writeln(response.originAddresses[1]);    
  }

  else {
    document.writeln("error");

       }
  }  

</script>
</html> 

【问题讨论】:

    标签: javascript google-maps-api-3


    【解决方案1】:

    好的,所以我不知道为什么这不起作用。首先,我推荐你使用 jQuery。你可以找到它here.

    首先,将您的代码包装在$(document).ready() 函数中,以便在页面准备就绪时执行

    $(document).ready(function() {
      // Everything in your original script block
      var origin1 = new google.maps.LatLng(55.930385, -3.118425);
      // etc etc      
    });
    

    其次,当您知道要写入的何处时,写入文档会容易得多。创建一个div 来保存您的位置数据。

    <body>
    <div id="location"/>
    </body>
    

    第三,当您从 Google 获得您的位置时,更改您的 div 中的文本以匹配:

    $("#location").text(response.originAddresses[1]);
    

    在没有 jQuery 的情况下处理文档是一场噩梦,我强烈推荐使用这个库。

    【讨论】:

    • 那么我该如何解决这个显示问题呢?错误在哪里?
    • 帮我一个忙,试着包装你的&lt;script&gt;,它会像&lt;body&gt;&lt;pre&gt;&lt;script&gt;这样处理javascript here&lt;/script&gt;&lt;/pre&gt;&lt;/body&gt;。也许您没有将数据写入正文?
    • 完成,但结果是一样的:没有输出。
    • 对于 2019 年遇到此问题的其他人,您可能还需要检查您是否已在 console.cloud.google.com 上启用了距离矩阵 API。欢迎。
    猜你喜欢
    • 2017-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-01
    • 2017-04-11
    相关资源
    最近更新 更多