我刚发现联系表单中所有字段的重置功能。我希望这个功能在几秒钟之后应用并且平滑淡入。
这是我重置的代码,因此用户可以再次发送电子邮件:
$( 'form' ).each(function(){
this.reset();
});
我想也许这样的事情可能吗?也许我需要添加一个fadeOut函数插入的实际内容?但我现在不是jQuery专家:
var formReset = $( 'form' ).each(function(){this.reset();});
formReset().delay('2000').fadeIn('500');
答案 0 :(得分:2)
尝试在fadeIn / fadeOut的回调中使用重置。
以下片段将淡出所有带有text和textareas类型的输入。在此之后,清除值并且元素在淡入淡出:
function reset(){
$('#myFormular').children('input:text, textarea').each(function(){
$(this).fadeOut('slow', function(){
$(this).val('');
$(this).fadeIn('slow');
});
});
}
$('#resetButton').click(reset);
示例:http://jsfiddle.net/WsDe2/2/
另一种解决方案是将字体颜色设置为输入元素的背景颜色。然后清除值,并在此更改后更改为原生颜色:
function reset(){
$('#myFormular').children('input:text, textarea').each(function(){
var baseColor = $(this).css('color');
$(this).animate({color : $(this).css('background-color')}, function(){
$(this).val('');
$(this).css('color', baseColor);
});
});
}
$('#resetButton').click(reset);
答案 1 :(得分:1)
this.reset();
setTimeout(function(){
$('#correct').fadeOut(500);
},2000);
使用setTimeout