我有以下代码将内容加载到div
,然后淡入:
$('a.search').click(function(){
$('.pop-up').load('search.php', function(){
$(this).fadeToggle();
});
});
但是,我假设这是在每次点击a.search
时发出请求,如果是切换?
是否有更经济的方式来实现此切换而不进行多次调用?
答案 0 :(得分:2)
在您自己的代码中实施切换,而不是使用.fadeToggle
。
$('a.search').click(function(){
if ($('.pop-up').is(':visible')) {
$('.pop-up').fadeOut();
} else {
$('.pop-up').load('search.php', function(){
$(this).fadeIn();
});
}
});
答案 1 :(得分:0)
您可以通过设置全局变量来检查一次加载。假设您的弹出div样式设置为display:none
,下面提供了示例代码:
var isPopUpLoaded = false;
$('a.search').click(function(){
if(isPopUpLoaded==false){
$('.pop-up').load('search.php', function(){
isPopUpLoaded = true;
});
}
$('.pop-up').fadeToggle();
})