标记在 Firefox 中正确显示,而在 Chrome 或 Opera 中则不然。我认为我遇到了一些范围问题,因为 db_locations
数组“有时”会丢失其值,并且到达 buildMap()
时为空。我说“有时”是因为当我在第一页刷新的 BuildMap()
中添加 alert(db_locations)
时,“倾向于”显示实际值。
感谢任何帮助。
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;
最佳答案
很可能 AJAX 请求没有按时返回。将 AJAX 调用包装在函数中,在 Ajax success 函数中调用 buildMap,并在窗口加载时调用 AJAX 请求包装函数。
关于javascript - map API v3 - Chrome 和 Opera 不显示标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11341524/