问题描述
我的项目中有一个非常简单的视图,其中包含带有带有autofocus
属性的元素的表单。
<div class="ui container" style="width: 25%;">
...
<div class="ui segment">
<h1 class="ui header">Log</h1>
<form class="ui form" method="POST">
<div class="field">
<label>ID</label>
<input autofocus id="id_input" type="text" name="id" placeholder="ID-########">
</div>
<div class="field">
<label>Serial Number</label>
<input id="serial_input" type="text" name="serial" placeholder="Serial Number">
</div>
<div class="field">
<button type="submit" class="ui teal button fluid">Submit</button>
</div>
</form>
</div>
...
</div>
<script>
$(document).ready(function() {
$('#id_input').on('keydown',function(e) {
if(e.keyCode == '13') {
e.preventDefault();
$('#serial_input').focus();
}
});
});
</script>
问题在于,autofocus属性似乎在页面加载时根本不执行任何操作。它不关注元素。 在尝试找出原因时,我碰巧按了F5键以重新加载页面,并立即在浏览器中切换了选项卡,并且成功了!
我尝试在其他浏览器上重现此内容:
- 当前浏览器:Chrome(84.0.4147.135)-如果选项卡处于非活动状态,自动对焦始终有效
- MS Edge Chromium(84.0.522.63)-如果选项卡处于非活动状态,则自动对焦始终有效
- MS Edge(42.17134.1098.0)-自动对焦根本不起作用
- Internet Explorer(11.1304.17134.0)-自动对焦根本不起作用
我的问题是为什么会这样,怎么解决?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)