私は次のような3つの異なるjQuery関数を持っています:
function step1() {
...
}
function step2() {
...
}
function step3() {
...
}
そして私がそれらをこのように呼ぶならば:
step1();
step2();
step3();
それらはすべて同時に実行されます。どうすればそれらを1つずつ呼び出すことができるので、終了step2();
後に呼び出され、終了後に呼び出されます。step1();
step3();
step2();
// より詳しい情報
Step1()
はjsonを実行し、htmlに詳細を追加し、Step2()
別のjsonを実行し、によって作成されたdivに情報を追加し、読み込み中のアニメーションを非表示にしますStep1()
。Step3()
//機能
一部のユーザーからの要求に応じて、次の機能があります。
jQuery.noConflict();
jQuery(document).ready(function($) {
var cardType = $.cookie('cardType');
var categoryID = $.cookie('categoryID');
function step1() {
$.getJSON('http://domain.com/benefits/active/all.json', function(data) {
$.each(data, function(i,item){
if (item.benefit_type_id == categoryID) {
content = '<li><a class="showDetails" data-offer-description="' + item.description + '" data-offer-period="' + item.begin_date + ' - ' + item.end_date + '"><div class="company" title="' + item.business_id + '"></div><div class="shortdescription">' + item.name + '</div></a></li>';
$(content).appendTo("#thelist");
}
});
step2();
});
} // function step1();
function step2() {
$('.company').each(function(i, item) {
var tempTitle = item.title;
$.getJSON('http://domain.com/businesses/from_list/' + tempTitle + '.json', function(data2) {
$.each(data2, function(i,item){
content = '<span>' + item.name + '</span>';
$(content).appendTo("div[title='" + tempTitle + "']");
});
step3();
});
});
} // function step2();
function step3() {
loaded();
$('#loading').delay(1000).fadeOut('slow', function() {
// Animation complete.
});
} // function step3();
step1();
});