每次加载AJAX后重新运行jQuery
我有密码每次加载AJAX后重新运行jQuery,jquery,ajax,Jquery,Ajax,我有密码 var expired_overlay=$('.expired-overlay'); expired_overlay.each(function(){ var t=$(this), p=$(this).closest('.coupon'), ph=p.height()+ ((p.css('padding-top').replace("px", ""))*2); t.css({'width':p.width(),'height':ph,'opacity':0.5})
var expired_overlay=$('.expired-overlay');
expired_overlay.each(function(){
var t=$(this),
p=$(this).closest('.coupon'),
ph=p.height()+ ((p.css('padding-top').replace("px", ""))*2);
t.css({'width':p.width(),'height':ph,'opacity':0.5})
});
这将在所需项目的firstload上运行。但是脚本可能需要使用AJAX加载新项目。加载新项后再次运行此代码的最佳方式是什么
谢谢。尝试使用ajaxComplete处理程序 。它在所有AJAX调用完成时触发
$('.log').ajaxComplete(function() {
SpecialFunction();
});
SpecialFunction() {
var expired_overlay=$('.expired-overlay');
expired_overlay.each(function(){
var t=$(this),
p=$(this).closest('.coupon'),
ph=p.height()+ ((p.css('padding-top').replace("px", ""))*2);
t.css({'width':p.width(),'height':ph,'opacity':0.5})
});
}
加载ajax内容后,需要再次运行.each循环。因此,将其作为函数,并在ajax调用完成时再次调用:)