如何选择用户可以按Tab键导航到的所有元素?
我是否必须对输入,文本区域,a,按钮等进行硬编码,或者是否可以通过浏览器的默认名称进行识别?
我最终想要实现的目标是:Default tabbing behavior puts links behind sticky header
最佳答案
您可以编写一个函数来查询每个可聚焦的元素,并过滤掉那些被禁用的元素,因为这样会禁用聚焦。
const getKeyboardFocusableElements = (element = document) =>
Array.from(element.querySelectorAll(
'a, button, input, textarea, select, details,[tabindex]:not([tabindex="-1"])'
)).filter(el => !el.hasAttribute('disabled'));
关于javascript - 如何选择用户可以使用JavaScript浏览的所有html元素?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60985577/