是否有可能以某种方式做到这一点,以便当您在浏览器的 url 栏中并按 TAB 键时,您会转到页面上的第一个输入字段,而不是您的书签或其他内容?
使用 focus() 可能是一种解决方法,但这不是我想要的。
所以焦点在 URL 栏中,用户按 TAB,焦点转到第一个输入字段:)
提前致谢。
这对于 jQuery 是不可能的,因为您正在尝试更改浏览器软件的“标签索引”。这超出了 jQuery 的限制。IE。它在DOM之外。
如果有办法改变它,我怀疑是否可以跨浏览器进行,并且可能仅适用于您的浏览器软件的特定实例。
是的,您可以通过设置tabindex
attributes来做到这一点,就像您设置任何其他属性一样。如果您希望在脚本中而不是直接在 HTML 中执行此操作,则只需使用该attr()
方法。
详细信息取决于页面结构和所需的行为,您需要了解tabindex
属性如何指定跳转顺序。考虑一个非常简单的情况,您只有一个包含导航链接和包含字段<div class=nav>
的页面的另一部分。input
假设您希望首先显示字段,并且仅在它们之后显示导航链接。然后你可以写:
$('input').attr('tabindex', 1);
$('.nav a').attr('tabindex', 10000);
在一个简单的例子中就是这么简单,因为共享相同tabindex
值的元素按照它们在 HTML 源代码中出现的顺序被标记。