0

假设我有

<input id="a" />
<a href="foo">foo</a>
<input id="b" />

默认情况下,选项卡会将我从atofoo带到b。如果我想直接从ab我可以这样做

document .getElementById ("a") .setAttribute ("tabindex", 1);
document .getElementById ("b") .setAttribute ("tabindex", 2);

但是现在以下内容不起作用,因为focus()显然需要tabindex=-1

document .getElementById ("b") .focus ();

我可以两者兼得吗?

4

3 回答 3

0

那不是我所看到的(Chrome)。将您拥有的内容准确粘贴到http://jsfiddle.net/mendesjuan/wW7Uy/

将焦点放在第二个文本字段中,并且按预期顺序排列 (a->b->link)

于 2012-04-02T21:25:36.690 回答
0

您是否尝试过将您的 HTML 更改为:

<input id="a" tabindex = "1" />
<a href="foo" tabindex = "2">foo</a>
<input id="b" tabindex = "3" />

如果你想让浏览器跳过foo,你可以给它一个 tabindex -1-1告诉浏览器不要在该元素上制表符。

如果我错过了什么,请告诉我。

于 2012-04-02T21:29:57.573 回答
0

它突然开始工作,不知道发生了什么变化。可能是缓存脚本。

于 2012-04-04T11:32:38.183 回答