提问人:Kevin Millhouse 提问时间:11/16/2023 最后编辑:Kevin Millhouse 更新时间:11/16/2023 访问量:20
下拉键盘陷阱只对一个元素起作用
Dropdown keyboard trap only working on one element
问:
尝试构建一个键盘陷阱,使导航下拉元素键盘可访问。预期的功能应该起作用,一旦用户按 Tab 键转到下拉元素,他们就可以按向下箭头打开下拉列表并触发子元素上的焦点陷阱,而在子菜单中,当他们向上按下时,焦点陷阱被移除并返回到触发器。一切正常,唯一的问题是此代码仅适用于第一个元素。
export default function() {
const trigger = $('#active-focus-trigger');
const container = $('.navPage-subMenu')
const focusTrap = focusTrapPackage.createFocusTrap('.navPage-subMenu', {
allowOutsideClick: true,
});
trigger.on("keydown", function(e) {
if(e.key === "ArrowDown") {
console.log(e);
e.preventDefault();
$(e.currentTarget).parent().addClass('active-focus');
focusTrap.activate();
}
});
container.on('keydown', function(e){
// e.preventDefault();
if(trigger.parent().hasClass('active-focus') && e.key === "ArrowUp") {
trigger.parent().removeClass('active-focus');
focusTrap.deactivate();
}
})
}```
答: 暂无答案
上一个:ViewBag 验证无法验证
评论