Tabindex跳过iframe但不满足于内容

时间:2011-09-16 07:59:42

标签: html tabindex

我有一个包含iframe的页面,而iframe包含一个表单。超出我的iframe我有更多的表格。

iframe中的输入元素是tabindex 1,2,3,4,而i给出了iframe tabindex 5,6,7,8之外的表单元素。

当我访问该页面,并转到iframe(tabindex 1)内的输入字段,并通过tab,我正确访问2,3,4,但随后发生了一些事情(显然整个iframe被选中),然后我的浏览器URL栏被选中,然后是搜索框,然后只有tabindex 5,6,7,8的元素。

我如何克服这种行为?我想在没有其他问题的情况下从4到5跳过。

我可以控制页面和iframe内容,因此javascript可以是一个解决方案,但页面位于不同的域中,我无法将它们带到同一个域,因此它是跨站点的。

干杯!

1 个答案:

答案 0 :(得分:0)

要回答部分问题,iframe中的body元素是一个可聚焦的元素。

您可以通过在加载的帧的主体上将tabindex设置为-1来阻止此效果。例如:

outer.html:

<body>
 <iframe src="inner.html"></iframe>
 <input />
 <input />
 <input />
 <input />
</body>

inner.html:

<body tabindex="-1">
 <input />
 <input />
 <input />
 <input />
</body>