我使用.get()从一系列页面中提取内容,并希望按照每个页面出现在我设置的数组中的顺序追加所提取的内容。但是,聚集的页面一准备好就会追加项目。如何规定附加项目的顺序?
function loadHTML() {
for(i = 0; i < 4; i++) {
var slug = ["slug-1", "slug-2", "slug-3", "slug-4"]
$.get('http://website.com/' + slug[i], function(data) {
var text = $(data).find(".text").html();
var title = $(data).find("#title").html();
$("#page").append("<div class='content_block'><h1>" + title + "</h1>" + text + "</div>");
});
}
};
loadHTML();发布于 2017-01-25 16:09:44
您需要使用回调再次调用:
var cnt = 0;
var slug = ["slug-1", "slug-2", "slug-3", "slug-4"];
function loadHTML() {
if (cnt>=slug.length) return; // stop
$.get('http://website.com/' + slug[cnt++], function(data) {
var text = $(data).find(".text").html();
var title = $(data).find("#title").html();
$("#page").append("<div class='content_block'><h1>" + title + "</h1>" + text + "</div>");
loadHTML();
});
}
loadHTML();或者让一个服务器进程接受数组并在一个块中返回数据。
https://stackoverflow.com/questions/41856235
复制相似问题