我们有一个简单的数据网格,我们通过tab键启用导航。 (我们移动到下一个单元格)在IE 7& 8当我们点击Tab键时,它会使焦点从网格移动到下一个元素。
在其他浏览器中,我们通过在包含网格的div上调用focus()来防止焦点移动到页面上的下一个元素。在IE中这不起作用,无论如何焦点都在继续。
我们可以做什么(没有jQuery)来保持对网格的关注,这样我们可以反复点击Tab键并在网格中移动单元格?
按下回车键时也存在同样的问题。
答案 0 :(得分:2)
在处理完Tab键时,在事件处理程序(onkeydown,keypress等)中使用此代码:)
return false;
这可以防止发生默认行为,并应阻止导航继续进行。
答案 1 :(得分:0)
另一种方法是按照您希望他们访问的顺序对元素使用tabindex属性。无需脚本。
然而,较旧的浏览器可能不支持HTML5版本,但可能这些浏览器也不支持焦点在相同的元素上。