setInterval中slideDown后jquery焦点不断重复帮助
单击此处查看示例 http://www.mestudios.com/form/
现在,当您单击“创建帐户”时 - 就会出现是用jquery做的幻灯片动画,然后第一个输入框焦点。
$("#openc").click(function(){
$("#close-top").slideUp(450);
$("#openc").hide();
setInterval(function() {
$("#open-me").slideDown();
$("#regkey").focus();
$("#closec").show();
}, 1000);
});
我遇到的问题是,当我尝试专注于另一个输入字段来输入信息时,焦点会跳回第一个输入字段(我猜它的 setInterval 出了问题,
任何帮助都会提前得到应用。 谢谢, -O
编辑:
这有效,谢谢......下面的也有效
$("#openc").click(function(){
$("#close-top").slideUp(450);
$("#openc").hide();
setTimeout(function() {
$("#open-me").slideDown();
$("#regkey").focus();
$("#closec").show();
}, 1000);
});
Click here to see example
http://www.messtudios.com/form/
Now, when you click on Create Account - there is a slide animation with jquery, and then the first input field focuses.
$("#openc").click(function(){
$("#close-top").slideUp(450);
$("#openc").hide();
setInterval(function() {
$("#open-me").slideDown();
$("#regkey").focus();
$("#closec").show();
}, 1000);
});
The problem I am having is that when I try and focus on another input field to enter information in, the focus skips back to the first input field ( i guess its something wrong with setInterval
Any Help would be appriciated in advance.
Thanks,
-O
EDIT:
This worked thanks... Also the below works
$("#openc").click(function(){
$("#close-top").slideUp(450);
$("#openc").hide();
setTimeout(function() {
$("#open-me").slideDown();
$("#regkey").focus();
$("#closec").show();
}, 1000);
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我认为你的意思是使用 setTimeout 而不是 setInterval;它每秒持续运行该循环,这就是导致焦点跳回到第一个输入框的原因。
如果您希望动画在 SlideUp 动画完成后发生,请使用 SlideUp 方法的回调参数,而不是依赖 setTimeout。
例如:
I think you meant to use setTimeout instead of setInterval; it's continuously running that loop every second which is what's causing the focus to jump back to the first input box.
If you want the animation to happen after the slideUp animation is complete, use the callback argument of the slideUp method instead of relying on setTimeout.
For example:
始终将焦点集中到第一个输入 bcoz 您将焦点上第一个输入的 id(
regkey
) 设置为焦点,而不是在下一个输入上焦点,您应该使用以下逻辑
focus alwayz to first input bcoz u set the id(
regkey
) of first input on focusinstead to focus on next input you should use below logic