jQuery用于控制用于HTML表单验证的CSS3动画

jQuery用于控制用于HTML表单验证的CSS3动画,jquery,css,Jquery,Css,我正在构建一个验证表单的小插件。我正在尝试添加一个动画,将输入背景从白色设置为红色(作为警告信号)。我对CSS3动画还不熟悉,实现CSS3动画在输入区域内从左向右滑动,从白色到红色的最佳方式是什么 以下内容为动画添加了类: $(this).addClass('animationBG'); 那么动画本身就是: .animationBG{ -webkit-animation-name: bgAnimation; -webkit-animation-duration: 3s;

我正在构建一个验证表单的小插件。我正在尝试添加一个动画,将输入背景从白色设置为红色(作为警告信号)。我对CSS3动画还不熟悉,实现CSS3动画在输入区域内从左向右滑动,从白色到红色的最佳方式是什么

以下内容为动画添加了类:

$(this).addClass('animationBG');
那么动画本身就是:

.animationBG{
    -webkit-animation-name: bgAnimation;
    -webkit-animation-duration: 3s;
    animation-iteration-count: infinite;
}

@-webkit-keyframes bgAnimation {
  from {
    background-color:#fff;
  }

  to {
    background-color:red;
  }
}

这里有一个解决方案。这涉及到使用一个单独的绝对定位的透明div

HTML

    <div class="container">
    <div class="background">  
    </div>
    <input type="text" name="test" class="white" /> 
</div>
jQuery只是为了添加和删除类

$("input").focus(function(e){
    $(".background").addClass("view");
});
$("input").focusout(function(e){
    $(".background").removeClass("view");
});
可能是最好的选择,除非您的输入元素上有一些您不想丢失的特定样式。然后你应该使用背景图像

这里有一个链接到小提琴


还不确定是否希望动画循环,直到满足某些条件。如果是这种情况,您应该使用css转换选项并使其循环,直到满足条件。

这里有一个解决方案。这涉及到使用一个单独的绝对定位的透明div

HTML

    <div class="container">
    <div class="background">  
    </div>
    <input type="text" name="test" class="white" /> 
</div>
jQuery只是为了添加和删除类

$("input").focus(function(e){
    $(".background").addClass("view");
});
$("input").focusout(function(e){
    $(".background").removeClass("view");
});
可能是最好的选择,除非您的输入元素上有一些您不想丢失的特定样式。然后你应该使用背景图像

这里有一个链接到小提琴


还不确定是否希望动画循环,直到满足某些条件。如果是这种情况,您应该使用css转换选项并使其循环,直到满足条件。

我想您可以设置
背景图像的
背景位置的动画,但是我不明白你怎么能用这种方式设置背景色的动画。在每个输入的顶部插入一个div,使用position-absolute并设置其宽度的动画怎么样?我认为不可能这样设置背景色的动画。正如Blazemonger所说的,你可以用一个图像来完成。另一个选项可能是渐变和设置停靠点的动画,但这将非常棘手。好的,我想我将不得不尝试并找出最佳解决方案,谢谢各位。我想你们可以设置
背景图像的
背景位置的动画,但是我不明白你怎么能用这种方式设置背景色的动画。在每个输入的顶部插入一个div,使用position-absolute并设置其宽度的动画怎么样?我认为不可能这样设置背景色的动画。正如Blazemonger所说的,你可以用一个图像来完成。另一个选项可能是渐变和设置停靠点的动画,但这将非常棘手。好的,我想我必须尝试一下,找出最好的解决方案,谢谢大家..嗨,杰西,谢谢。。看起来不错。。。最终,一旦输入具有正确的格式,无论是电子邮件还是邮政编码,我希望将其滑回白色,以确认错误已被修复,表单有效,并准备通过AJAX发送……是的,我已进行了设置,以便在焦点输出时删除类,但您只需更改jQuery即可在验证已通过。我还添加了一个带有图像选项的小提琴。嗨,杰西,谢谢。。看起来不错。。。最终,一旦输入具有正确的格式,无论是电子邮件还是邮政编码,我希望将其滑回白色,以确认错误已被修复,表单有效,并准备通过AJAX发送……是的,我已进行了设置,以便在焦点输出时删除类,但您只需更改jQuery即可在验证已通过。我还添加了一个带有图像选项的小提琴。