我有一个表单上的几个控件。我必须按照不符合它们在HTML中创建顺序的顺序设置tabIndex。在最后有一个按钮,但是这个元素的tabIndex没有被设置(它从未获得焦点)。
<button id="btnSave" tabindex = "86" title='click here'>Submit Here</button>
可能的原因是什么?非常感谢您的帮助。
我有一个表单上的几个控件。我必须按照不符合它们在HTML中创建顺序的顺序设置tabIndex。在最后有一个按钮,但是这个元素的tabIndex没有被设置(它从未获得焦点)。
<button id="btnSave" tabindex = "86" title='click here'>Submit Here</button>
Tabindex最佳实践
通常来说,我建议不要给任何字段/组件设置递增的tabindex值。因为如果我们遵循这个规则,那么对于网页中的任何字段/组件,我们需要维护相同的tabindex递增值,而且我们通常会根据某些条件显示/隐藏字段/组件,这样的情况下tab index将无法保持一致。
我强烈建议的最佳实践是,我们不应该使用大于0的Tabindex,只在必需时使用Tabindex -1和0
tabindex="-1"
将tabindex设置为“-1”允许您使用脚本设置元素的焦点,但不会将其放置在页面的tab顺序中。这很方便,当您需要将焦点移动到通过脚本或用户操作之外更新的某些内容时。
tabindex="0"
将tabindex设置为“0”将使元素变为可聚焦状态。它不会设置元素在tab顺序中的位置,只允许用户按DOM决定的位置集中元素。
tabindex="1"(或任何大于0的值)
不要设置tabindex="1"或任何大于零(或任何正数)的值。
tabindex
属性,那么该元素将成为导航中的第一个,这意味着您不能直接从最后一个输入字段进入它(但只能通过浏览器自己的用户界面中的一些依赖于浏览器的项目,如搜索框和地址框)。请参阅HTML 4.01规范中有关tabindex
的说明。tabindex
属性,请发布一个演示以展示其行为 - 在几个浏览器上进行简单测试时,当在所有字段上设置tabindex
时,它可以正常工作。<td>
元素内的文本,因此无法聚焦。如果我在其上设置tabindex
,它就变得可聚焦(可获取焦点)-现代浏览器也允许您对普通元素执行此操作。 - Jukka K. Korpela尝试:
<input type="button" value="Sumit here" tabindex="90" />
请注意,您的索引将从其父级开始计数,从零开始!在 HTML 中,索引 90 太大了。