每當我嘗試運行下面這樣的東西時,螢火蟲告訴我「標記未定義」行(「var i = 0 ...」javascript - 回調中定義的全局變量不在範圍之內?
但我在上面聲明標記爲全局變量正確的...?
var markers;
function load() {
$.get("phpsqlajax_genxml.php", function(data) {
markers = data.documentElement.getElementsByTagName("marker");
});
for (var i = 0; i < markers.length; i++) {
var name = markers[i].getAttribute("name")
//do more stuff
}
}
但是當我做到這一點,它的工作原理。
var markers; function load() { $.get("phpsqlajax_genxml.php", function(data) { markers = data.documentElement.getElementsByTagName("marker"); makeMarkersWithXMLinfo(); }); function makeMarkersWithXMLinfo() { for (var i = 0; i < markers.length; i++) { var name = markers[i].getAttribute("name") //do more stuff } } }
我甚至通過 「標記」 作爲參數傳遞給我的馬肯arkersWithXMLinfo()函數。但它的工作。這是怎麼回事? thnx
哇,這是有幫助的。謝謝!!! – gunit
@GeorgeL :-)不用擔心,很高興幫助。因爲你是Stack Overflow的新手,所以我會告訴你:http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work –