我想知道是否有任何方式通过按Tab键以与TAB键原生实现相同的方式导航Dialog组件?按Enter键浏览GWT/GXT组件
0
A
回答
0
虽然我没有通过处理keyDown和keyUp事件来尝试它,但它肯定是可行的。尽管您可能无法以这种方式截取浏览器生成的对话框,而使用Window.alert()创建其他对话框。你如何创建对话框?
0
Tab键是浏览器做的改变重点工作 - 要添加什么特殊的需求,你会发现,标签适用于任何形式在互联网上(除非出于某种原因...明确禁用)。
要使用回车键移动焦点,您必须监听onkeydown事件(焦点通过选项卡更改也会发生onkeydown,因此选择此项以保持一致性),检查它是否为Enter键,如果是,则将焦点移动到列表中的下一个元素。
典型的选项卡焦点行为涉及到浏览器检查页面上元素的tabIndex,并找到页面上的下一个元素具有更高的tabIndex或最近的后续兄弟/表亲元素。我没有一种方法可以轻松实现,所以我将专注于下一个小部件。
GXT 3的FormPanelHelper有一些方便的方法来查找所有领域 - 这个代码可以作为非GXT领域的基础为好。跟踪对话框中找到的字段中的所有FocusEvent和BlurEvent,并使用它来始终跟踪当前关注的字段。向对话框本身添加一个密钥处理程序,以捕获所有关键事件,并检查是否有一个是输入密钥。如果是这样,请确定当前焦点字段的下一个字段,并在其上调用.focus() - 这将触发上述的焦点处理程序,以便您的簿记更新正确。
正如@ eliran米指出,考虑只留下tab键 - 不要在用户浏览他们习惯的方式的方式获得。增加新的功能可能是一件好事,但带走预期的行为可能不是。
相关问题
- 1. 发送“Enter”键到浏览器窗口
- 2. 使用Excel VBA自动化按键进入IE浏览器按Enter键搜索
- 3. 跨浏览器处理使用javascript按下“Enter”键
- 4. 按Enter键
- 5. 在文本框的按键事件中按下Enter键后取消Enter键
- 6. 按Enter键继续
- 7. 按Enter谷歌浏览器中的火灾变化事件
- 8. Android浏览器中某些按键没有按键事件
- 9. 角JS 2 MVC 4.5在浏览器的URL按Enter键显示404个
- 10. 按Enter键输入qtp
- 11. 按Enter键跳过打印?
- 12. 按Enter键时停止'丁'
- 13. 当按下Enter键时
- 14. 如何获得'enter'按键按键事件监听器?
- 15. 如何防止按键上的ENTER键
- 16. 在浏览器中模拟按键?
- 17. 如何在ag-grid-react cellEditor组件中防止“Enter”键按下事件传播?
- 18. 嵌入浏览器组件
- 19. 跨浏览器事件处理程序必须捕获[ENTER]
- 20. 从嵌入式浏览器冒泡的按键事件
- 21. ContentEditable - 按Enter键生成P标签
- 22. KendoUI Grid按下Enter键时保存
- 23. 防止WPF窗体按Enter键提交
- 24. C#:按下Enter键时更改DropDownList值
- 25. 按Enter键不适用于AngularJS
- 26. STDIN无需按ENTER键即可阅读
- 27. Enter键触发登录按钮
- 28. C++检测用户按下的ENTER键
- 29. 如何按下“Enter”键执行功能?
- 30. 按Enter键继续或q退出C++
很可能,非常不推荐。用户习惯使用Enter键执行一组定义的操作,导航不是其中之一。 – 2012-07-31 15:20:07