0

Chrome や Opera ではなく、Firefox でマーカーが正しく表示されます。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 に答える