0
我有幾個功能,需要按順序執行,解決的JavaScript/jQuery的
function home() {
var home = document.getElementById('home');
html2canvas(home).then(function(canvas) {
home.appendChild(canvas);
var basic = canvas.toDataURL();
var item = {};
item["image"] = basic;
item["width"] = 595;
data_1.push(item);
});
}
function options() {
var temp_cnt = 0;
$('.tour_options_table_data_info').each(function(index, element) {
html2canvas(element).then(function(canvas) {
element.appendChild(canvas);
elem = canvas.toDataURL();
var item = {};
item["image"] = elem;
item["width"] = 595;
data_1.push(item);
});
});
}
function inclusions() {
$('.inc-main1,.inc-main2,.inc-main3').each(function(index, element) {
html2canvas(element).then(function(canvas) {
element.appendChild(canvas);
elem = canvas.toDataURL();
var item = {};
item["image"] = elem;
item["width"] = 595;
data_1.push(item);
});
});
}
function home()
應首先調用,options()
應該調用2,等等 我$.when()
喜歡
$.when(home(),options(),inclusions()).done(function(a,b,c) {
console.log(a,b,c);
})
但它不會順序調用功能 請在這裏建議我一個方法。
有沒有辦法,你打算這樣做。如果接下來需要來自一個請求的數據,那麼你將不得不依次執行它們 - 即。在回調中鏈接它們。 –
@RoryMcCrossan我只是想按順序在'data_1'數組中推入數據,我的意思是首先它應該有'home()',那麼它應該有'options()'數據,是否有可能沒有鏈接它們的回調? –
如果您可以識別數組中的每個請求的數據,以便它可以通過sort()運行,那麼是的,否則不可以。 –