我想在我的JAVASCRIPT文件中加载一个带有配置信息的本地JSON文件以供使用。在Javascript中加载JSON文件
我尝试这样做:
var map;
var initialMapCoordinates = "";
function loadConfigFile() {
$.getJSON('js/config.json', function(jd) {
initialMapCoordinates = jd.googleMaps.initialCoordinates;
initMap();
});
};
function initMap() {
google.maps.visualRefresh = true;
var mapOptions = {
center: new google.maps.LatLng(initialMapCoordinates),
zoom: 10,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var mapElement = document.getElementById('map');
map = new google.maps.Map(mapElement, mapOptions);
}
google.maps.event.addDomListener(window, 'load', loadConfigFile());
我要分配的配置文件中的变量不同的元素,然后用它们在我的脚本。我仍然失败。我试图使用全局变量,但我似乎在这里做错了什么。
如何将jd.googleMaps.initialCoordinates
的内容变为与该函数外部一起使用的变量?
当您尝试将其设置为全局变量时,您会做什么? – TheDude 2015-04-03 18:24:39
我编辑了问题 – sesc360 2015-04-03 18:26:25
我的猜测是你在尝试访问全局变量之前有机会被异步请求设置。您需要检查以确保它已经加载,有多种方式来处理这个问题,但通常您应该确保您的JavaScript需要该配置文件在加载变量之前不会触发。因此,将你的地图功能封装在一个init()函数中,并在设置全局之后调用它。 – 2015-04-03 18:27:03