0

标记在 Firefox 中正确显示,而不是在 Chrome 或 Opera 中。我认为我有一些范围问题,因为db_locations数组“有时”会失去它的价值,并且是空的buildMap()。我说“有时”是因为当我在第一页刷新时添加alert(db_locations)BuildMap()倾向于”显示实际值。

感谢任何帮助。

var db_locations = new Array();
$.ajax({
    type: "GET",
    url: "markers_xml.php",
    dataType: "xml",
    success: function(xml) {
...
var inside = new Array(val1,val2,val3 etc);
db_locations[i]=inside;
...
});

function buildMap() { /* this is the init function */
...
setMarkers(map, db_locations);
...
}

function setMarkers(map, locations) {
// markers loop
}

window.onload = buildMap;
4

1 回答 1

2

AJAX 请求很可能没有按时返回。将 AJAX 调用封装在一个函数中,在 Ajax 成功函数内调用 buildMap,在窗口加载时调用 AJAX 请求封装函数。

于 2012-07-05T09:35:20.927 回答