如何使用 jQuery 在刚刚出现的元素上设置焦点
我有一个文档就绪块,如下所示:
$(document).ready(function () {
$('#addTagLink').click(function () {
$('#addTagField').show();
$('#addTagField').val("");
$('#addTagField').focus();
});
});
addTagField
是一个常规文本输入,在页面加载时由 css 设置了 display:none 。
当用户单击 addTagLink
元素时,输入字段会正确显示,但焦点不会按预期设置到该字段。
我认为这一定与 display:none / show() 功能有关,因此将 $('#addTagField').focus();
更改为另一个字段 $(' #name').focus();
效果很好。
任何人都可以建议首先为什么我看到这个问题,其次如何解决它?
I have a document ready block as follows:
$(document).ready(function () {
$('#addTagLink').click(function () {
$('#addTagField').show();
$('#addTagField').val("");
$('#addTagField').focus();
});
});
The addTagField
is a regular text input that has display:none set by css on page load.
When a user clicks on the addTagLink
element the input field is shown correctly but focus doesn't get set to the field as intended.
I figured it must be something to do with the display:none / show() functionality, so changed the $('#addTagField').focus();
to another field $('#name').focus();
which worked perfectly.
Can anyone suggest firstly why I see this issue and secondly, how to fix it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
事实证明这是我的元素 ID 的问题。哎呀。
Turns out it was a problem with my element IDs. Oops.