如果我有两个输入字段,一个具有autofocus属性而另一个没有,我如何关注文档加载时没有autofocus属性的输入字段?例如:
<script type="text/javascript">
$(document).ready(function() {
// $("input[name=\"bar\"]").blur();
// $("input[autofocus]").removeAttr("autofocus");
$("input[name=\"foo\"]").focus();
});
</script>
<p><input name="foo" type="text"></p>
<p><input autofocus name="bar" type="text"></p>
当我加载页面时,光标固定在第二个输入字段而不是第一个。我已经尝试了注释掉的线路试图以某种方式修复它,但我没有成功。
编辑: 我已经尝试过&#34;重复问题&#34;中提到的解决方案,即在元素上使用.blur(),但这不起作用。此外,重复的问题仅解答如何禁用自动对焦,并且不回答如何在之后重新关注其他输入字段。
答案 0 :(得分:1)
在花了一些时间之后,我终于发现了“焦点”#39;太早开火了。要解决这个问题,我所要做的就是将它包装在一个settimeout中:
setTimeout(function() {
$("#myTags input[type=\"text\"]").focus();
}, 20);
$("input[autofocus]").blur();