jQuery fadeOut 延迟在页面加载后第一次不起作用
jQuery fadeOut delay not working first time after page load
我实现了以下代码:
$.ajax({
type: 'POST',
data: "id="+id,
url: 'xyz.php',
async: false,
dataType: 'json',
success: function(data){
$('#message_'+id).html('Estás de acuerdo<span class="msg_order_close"></span>').show().fadeOut('slow').delay('5000');
}
});
这里我使用了fadeOut('slow').delay('5000');
5秒后隐藏内容。但是在第一个 ajax 请求页面停止加载后,它第一次不起作用。在第一次请求后它工作得很好。内容将在 5 秒后隐藏。第一次添加新内容会立即隐藏
将接受建议。
如果要在淡出前延迟,需要调换顺序:
.delay(5000).fadeOut('slow')
(感谢 @tabz100 首先看到的)
现在如果你想淡出5秒,那么使用
.fadeOut(5000, 'slow')
问题是您正在等待在 隐藏您的内容之后。将 .delay()
部分 放在 de fadeOut() 函数之前。
$.ajax({
type: 'POST',
data: "id="+id,
url: 'xyz.php',
async: false,
dataType: 'json',
success: function(data){
$('#message_'+id).html('Estás de acuerdo<span class="msg_order_close"></span>').show().delay(5000).fadeOut('slow');
}
});
此外,5000 不是字符串,因此您应该删除引号。
我实现了以下代码:
$.ajax({
type: 'POST',
data: "id="+id,
url: 'xyz.php',
async: false,
dataType: 'json',
success: function(data){
$('#message_'+id).html('Estás de acuerdo<span class="msg_order_close"></span>').show().fadeOut('slow').delay('5000');
}
});
这里我使用了fadeOut('slow').delay('5000');
5秒后隐藏内容。但是在第一个 ajax 请求页面停止加载后,它第一次不起作用。在第一次请求后它工作得很好。内容将在 5 秒后隐藏。第一次添加新内容会立即隐藏
将接受建议。
如果要在淡出前延迟,需要调换顺序:
.delay(5000).fadeOut('slow')
(感谢 @tabz100 首先看到的)
现在如果你想淡出5秒,那么使用
.fadeOut(5000, 'slow')
问题是您正在等待在 隐藏您的内容之后。将 .delay()
部分 放在 de fadeOut() 函数之前。
$.ajax({
type: 'POST',
data: "id="+id,
url: 'xyz.php',
async: false,
dataType: 'json',
success: function(data){
$('#message_'+id).html('Estás de acuerdo<span class="msg_order_close"></span>').show().delay(5000).fadeOut('slow');
}
});
此外,5000 不是字符串,因此您应该删除引号。