jquery动画问题
好的,我有这张表格。表单中有一个输入字段,当您键入?在输入值的某个地方,我有一段代码,它运行一个onkeyup,将元素(.searchEnter)滑出,并更改一些cssjquery动画问题,jquery,jquery-animate,Jquery,Jquery Animate,好的,我有这张表格。表单中有一个输入字段,当您键入?在输入值的某个地方,我有一段代码,它运行一个onkeyup,将元素(.searchEnter)滑出,并更改一些css <script> $(".askInput").keyup(function() { if ($(this).val().indexOf("?") != -1) { $('.searchEnt
<script>
$(".askInput").keyup(function() {
if ($(this).val().indexOf("?") != -1) {
$('.searchEnter').animate({
marginLeft: "310px"
}, 200 );
$('.form1').get(0).setAttribute('action', 'post.php');
} else {
$('.searchEnter').animate({
marginLeft: "250px"
}, 200 );
$('.form1').get(0).setAttribute('action', 'search.php');
}
});
</script>
$(“.askInput”).keyup(函数(){
if($(this.val().indexOf(“?”)!=-1){
$('.searchEnter')。设置动画({
边缘左图:“310px”
}, 200 );
$('.form1').get(0.setAttribute('action','post.php');
}否则{
$('.searchEnter')。设置动画({
边缘左侧:“250px”
}, 200 );
$('.form1').get(0.setAttribute('action','search.php');
}
});
当我在输入中键入问号时,.searchEnter会立即滑出。但是,问号前面的字符越多,(例如,您的名字是什么?(前面17个字符?),则.animate启动和滑动.searchEnter所需的时间就越长。为什么会发生这种情况,我如何修复它?它正在将所有动画排队。先打电话再打 因此,与此相反:
$(".searchEnter").animate(...
这样做:
$(".searchEnter").stop().animate(...
另外,我注意到您正在使用
get(0).setAttribute(…
)。为什么不直接使用?试试$('.searchEnter').stop()。设置动画…哇,这个问答论坛真是棒极了。非常感谢您的建议!