我正在阅读一个包含大约 1180 个跟踪点的 gpx xml 文档,每个跟踪点都包含一个海拔标记。我可以获得长度,但不能将其传递给稍后在计算总上升的 if 循环中使用。
var elevs = [];
var $l = 0;
$.ajax({
type: "GET",
url: "../gpx/27-Mar-13slow.gpx",
dataType: "xml",
success: function(xml) {
$(xml).find('trkseg').each(function(){
$l=$(this).find("trkpt").length;
$(xml).find('trkpt').each(function(){
elevs.push(+$(this).find('ele').text());
});
$('#holder').append('<div>' + $l + '</div>');
//fn();
});
}
});
即$('#holder').append('<div>' + $l + '</div>');
正确显示跟踪点的总数,但将其移到它没有的功能之外。我假设的全局变量$l
不会更改为跟踪点长度。谁能告诉我为什么?(elevs 数组包含高程数据 ok)