[英]JQuery - reuse data after load
我有這個功能:
// AJAX MESSAGES SHOWING
show_msg.on('click', function(e){
var $this = $(this),
url = $this.attr('href'),
url_info = url + ' .basic_info > *',
url_msg = url + ' .contact_messages > *';
basic_info.slideUp('fast', function(){
basic_info.empty().load(url_info, function(){
basic_info.slideDown('fast');
});
});
contact_messages.slideUp('fast', function(){
contact_messages.empty().load(url_msg, function(){
contact_messages.slideDown('fast');
});
});
return false;
});
它正在工作,但是我使用了兩次負載,我想這不是很有效的方法。 有什么方法可以一次加載數據,然后從該數據中選擇所需的內容嗎?
你可以做:
(function(){
var basicInfoLoaded = false, contactMessageLoaded = false;
// AJAX MESSAGES SHOWING
show_msg.on('click', function(e){
var $this = $(this),
url = $this.attr('href'),
url_info = url + ' .basic_info > *',
url_msg = url + ' .contact_messages > *';
basic_info.slideUp('fast', function(){
if(basicInfoLoaded)
basic_info.slideDown('fast');
else{
basicInfoLoaded = true;
basic_info.empty().load(url_info, function(){
basic_info.slideDown('fast');
});
}
});
contact_messages.slideUp('fast', function(){
if(contactMessageLoaded)
contact_messages.slideDown('fast');
else{
contactMessageLoaded = true;
contact_messages.empty().load(url_msg, function(){
contact_messages.slideDown('fast');
});
}
});
return false;
});
})();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.