GMaps API - 无响应
Posted
技术标签:
【中文标题】GMaps API - 无响应【英文标题】:GMaps API - no response 【发布时间】:2014-05-08 01:39:58 【问题描述】:我只是尝试让我的谷歌地图插件工作。 这是我到目前为止写的代码:
<html class="ui-mobile">
<head>
............
<script type="application/javascript" src="js/jquery-2.1.0.js"></script>
<script type="application/javascript" src="js/jquery.mobile-1.4.2.min.js"></script>
.............
<script type="text/javascript" src="https://maps.google.com/maps/api/js?v=3.exp&sensor=true"> </script>
<script type="text/javascript">
var fromLat = 0.000;
var fromLng = 0.000;
var toLat;
var toLng;
var mapcontainer;
var map;
var directionsDisplay;
var directionsService = new google.maps.DirectionsService();
function onGeoGetSuccess (p)
fromLat = parseFloat(p.coords.latitude);
fromLng = parseFloat(p.coords.longitude);
alert("run"); //is fired
calcRoute();
function onGeoGetFail(e)
fromLat = 0.00;
fromLng = 0.00;
alert("fail");
function calcRoute()
var request =
origin: new google.maps.LatLng(fromLat, fromLng),
destination:new google.maps.LatLng(toLat, toLng),
travelMode: google.maps.TravelMode.WALKING
;
directionsService.route(request, function(response, status)
alert("status "+status )
if (status == google.maps.DirectionsStatus.OK)
directionsDisplay.setDirections(response);
);
function initGmap()
directionsDisplay = new google.maps.DirectionsRenderer();
var mapOptions =
zoom: 7,
disableDefaultUI : true,
draggable : false,
keyboardShortcuts : false,
scrollwheel : false,
mapTypeId: google.maps.MapTypeId.WALKING
map = new google.maps.Map(mapcontainer.find(".map-canvas").get(0), mapOptions);
directionsDisplay.setMap(map);
directionsDisplay.setPanel(t.find(".mapcontainer").get(0));
///// just to show - this is triggered on a subpage which is autoloaded by jquery mobile
$(".building_page").on("pageshow",function()
t = $(this)
c = t.attr('data-destination').split(',');
toLat = c[0];
toLng = c[1];
mapcontainer = t;
google.maps.event.addDomListener(t, 'load', initGmap);
navigator.geolocation.getCurrentPosition(onGeoGetSuccess, onGeoGetFail);
);
</script>
</head>
<body >
<ul class="nativeDroidCards">
<li>.........</li>
<li>........</li>
<li id="building_E_map" >
<div class="map-canvas"></div>
<div class="mapcontainer"></div>
<a href="maps:q=dfsfdsfdsfffdsf"><i class="icon-screenshot"></i>Navigation </a>
</li>
</ul>
</body>
</html>
我可以说一切都很好,纬度设置正确,设备的地理位置是正确的usw。
但我的容器是空的,没有错误。没有。 我调试了它,所以很清楚:
directionsService.route(request, function(response, status)
alert("status "+status )
if (status == google.maps.DirectionsStatus.OK)
directionsDisplay.setDirections(response);
);
从不打。它只是从未调用过。 但也不会在任何地方触发错误。
只是,......荒谬。
有什么想法吗?
提前致谢
【问题讨论】:
什么动作会导致地图显示?您发布的代码中没有任何内容可以说明这一点。 【参考方案1】:您包含两次 API。一次记录方式,一次错误:
<script type="text/javascript" src="https://maps.google.com/maps/api/js?v=3.exp&sensor=true"> </script>
<script src="https://maps.gstatic.com/intl/de_de/mapfiles/api-3/16/5/main.js" type="text/javascript"></script>
去掉不正确的(第二个,你不能直接访问API...)
【讨论】:
哦,对不起,我只是从浏览器的输出中获取 c&p。该脚本正在动态注入它。对不起。 浏览器不应该这样做。您是否从调试器中转储它?也许你可以提供一个展示问题的 jsfiddle。以上是关于GMaps API - 无响应的主要内容,如果未能解决你的问题,请参考以下文章
Amazon Sp-Api createFeedDocument,无响应 (Node.js) / 和 InvalidInput-contentType 错误