我在我的应用程序中关注了this link。反过来,我在设备中获得了空白区域,并且未显示.Map
。
代码:
<script type="text/javascript">
$(function() {
$('#map_canvas').gmap().bind('init', function() {
$.getJSON( 'http://xxxxxxxxxxxxxxxxxxxxxxxxxxxxx?latitude=&longitude=', function(data) {
$.each( data.Status.Shoplist, function(i, m) {
$('#map_canvas').gmap('addMarker', { 'position': new google.maps.LatLng(m.lat, m.lng)} );
});
});
});
});
</script>
JSON:
{"Status" :{ "Shoplist":[ { "id" : "1", "Name" : "ee", "phone" : "", "fax" : "", "latitude" : "xxxxxx", "longitude" : "yyyyyyy" } , { "id" : "3", "Name" : "hhh", "phone" : "", "fax" : "", "latitude" : "xxxx", "longitude" : "yyyyy" } ,..... } ]}}
答案 0 :(得分:0)
确保在PhoneGap的白名单中添加了任何外部主机。
在iOS中,根据此页面上的常见问题解答,将主机添加到PhoneGap.plist中的ExternalHosts键:http://wiki.phonegap.com/w/page/41631150/PhoneGap%20for%20iOS%20FAQ
在Android中将主机添加到项目中/ res / xml中的phonegap.xml文件中。格式与iOS不同。以下是一个示例phonegap.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<phonegap>
<access origin="http://127.0.0.1*"/>
<access origin="http://*.phonegap.com"/>
<log level="DEBUG"/>
</phonegap>
允许使用通配符,如上例所示。
确保添加您的脚本可能尝试调用的任何外部主机(使用可以变化的Google地图和许多)。当您尝试使其工作时,您可以随时添加*
以允许所有外部主机。
答案 1 :(得分:0)
由于您的json没有lat或lng属性,您应该将addMarker方法中的代码更改为
new google.maps.LatLng(m.latitude, m.longitude)