如何在json文件加载后再加载googlemap?

时间:2017-03-14 01:21:14

标签: javascript jquery json function webhooks

我通过javascript回调函数使用googlemap

<script>
jsonmap={};
jqxhr=$.getJSON("postheat.json",function(data){
return data}).done(function(data){
  jsonmap=data;
  return data;
});
function initMap(){
   mapjson.....;
}
</script>
<script src="//maps.google.com/maps/api/js?sensor=true&callback=initMap"></script>

但是我发现在initMap时,json数据还没有准备好。如何确保已加载json数据然后执行initMap函数。

1 个答案:

答案 0 :(得分:0)

initmap阻止

中完成呼叫后,尝试拨打done
jsonmap={};

jqxhr = $.getJSON("postheat.json",function(data){
            jsonmap=data;
            //try adding script to the page here:
            var s=document.createElement("script");
            s.src="//maps.google.com/maps/api/js?sensor=true&callback=initMap";
            document.head.appendChild(s);
        });

function initMap(){
   mapjson.....;
}

但我确信有更好的方法。尝试从地图文档中获取内容。