从给定的id中选择特定的元素并设置焦点.优化的方法
jQuery: Select particular element from given id and set focus on it. Optimized way
在许多地方,我必须将焦点设置在可见的字段上,并且我可以根据不同的场景设置多个可见字段。例如:
<input id="A">
<input id="B">
情况是这两个输入中的任何一个都可以可见,我必须将焦点设置在它上面。
我现在正在做什么:
if ($('#A').is(":visible")) {
$('#A').focus();
} else if ($('#B').is(":visible")) {
$('#B').focus();
}
我觉得可以有更好的优化方法来做这件事。我想去掉if else if语句
建议吗?
您可以使用:visible
选择器和first()
如下
$('#A:visible, #B:visible').first().focus();
$('#A:visible, #B:visible')
将选择具有id A
和B
并且当前可见的元素,因此基本上只选择/过滤具有给定id的可见元素。
first
将从匹配集合
focus
将元素设置为焦点
也许是这个?
$('#A, #B').filter(':visible').first().focus();
您可以像这样链接功能:
$('#A, #B').filter(':visible').focus()
相关文章:
- 在jAlert之后设置焦点
- 设置焦点动态创建的文本区域
- 渲染后如何在输入字段上设置焦点
- 如何在动态树标题中的输入字段上设置焦点
- react:如何通过点击处理程序设置焦点
- 在ADF弹出窗口中设置焦点组件
- 如何在隐藏的文本框上设置焦点
- EmberJS中的全局keyDown/keyPress事件,而无需设置焦点
- 弹出窗口设置焦点
- 尝试以编程方式设置焦点不适用于 Firefox
- 如何在 D3.js力定向图中设置焦点节点
- 无法在 Firefox/Opera 中设置焦点
- 无法使用 JavaScript 在文本框上设置焦点
- 在文本区域字段中设置焦点和突出显示
- 在jquery/javascript的输入框中的特定项目之后设置焦点
- 通过单击元素设置焦点,但不包括某些子项
- 客户端按键处理事件、设置焦点功能、__doPostBack ASP.NET
- 使用 jQuery 的 .focus() 在 Mac 上的 Firefox 中设置焦点
- 使用主镜头设置焦点
- 如何在aspx页面中的用户控件文本框上设置焦点