这是代码:
$('div#listing').slideUp(function(){
$('div#img_loading').show(); //THIS WORKS
});
var jqxhr = $.post("process.php", {page: 1},
function(data) {
//some code
});
jqxhr.complete(function(){
$('div#img_loading').hide(function(){ //THIS HIDE FUNCTION DOES NOT WORK
$('div#listing').slideDown(); //THIS LINE WORKS
});
});
图像已成功加载,但在 ajax 完成后它不会隐藏自身。奇怪的是 $('div#listing').slideDown() 有效,但 hide() 不起作用。
非常感谢!
我认为您不希望在隐藏命令中使用函数
$('div#listing').slideUp(function(){
$('div#img_loading').show(); //THIS WORKS
});
var jqxhr = $.post("process.php", {page: 1},
function(data) {
//some code
});
jqxhr.complete(function(){
$('div#img_loading').hide();
$('div#listing').slideDown();
});
请通读 hide
jQuery API 的规范。在代码中,您尝试指定回调,但不需要。只需按原样使用它:
$('div#img_loading').hide();
编辑:或者,您可以将上面的代码放在 ajax 回调函数中:
var jqxhr = $.post("process.php", {page: 1},
function(data) {
//some code
$('div#img_loading').hide();
});