[英]How can I delay a jQuery .blur function?
I'm using this code to validate an input field, but I don't want it to pull the text from the field until half a second after the field loses focus. 我正在使用此代码来验证输入字段,但我不希望它在字段失去焦点后将字段从字段中拉出半秒。 How can I do that?
我怎样才能做到这一点?
$(document).ready(function()
{
$("#group_id").blur(function()
{
$("#gmsgbox").removeClass().addClass('messagebox').text('Checking...').fadeIn("slow");
$.post("group_availability.php",{ group_id:$(this).val() } ,function(data)
{
if(data=='invalid')
{
$("#gmsgbox").fadeTo(200,0.1,function()
{
$(this).html('Please enter a valid Group ID').addClass('messageboxerror').fadeTo(900,1);
});
}
else
{
$("#gmsgbox").fadeTo(200,0.1,function() //start fading the messagebox
{
$(this).html('Group ID available').addClass('messageboxok').fadeTo(900,1);
});
}
});
});
});
http://api.jquery.com/delay/ http://api.jquery.com/delay/
$("#group_id").blur(function() {
$("#gmsgbox").delay(500).queue(function() {
$("#gmsgbox").removeClass().addClass(//etc...
尝试通过setInterval(), clearInterval()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.