我目前正在尝试手动将焦点设置在两个按钮上。它们是jQuery对象,保存在一个名为pMenus的数组中。这是代码
function OpenSubMenus(pMenus) {
pMenus[pMenus.length - 1].get(0).focus();
$(pMenus[pMenus.length - 1]).click();
if (pMenus.length == 1) {
return;
}
setTimeout(() => {
pMenus[pMenus.length - 1].get(0).blur();
pMenus.pop();
OpenSubMenus(pMenus);
}, 1000)
}
问题是,在第二个手动.focus()
上,activeElement停留在body of the page
上。以前有人遇到过这个问题吗?
提前谢谢。
问题是pMenus[pMenus.length - 1]
返回第二个按钮而不是第一个按钮。使用pMenus[pMenus.length - 2]
获取第一个元素。
对不起,打扰大家了。正如我应该提到的,我没有为您提供足够的信息,即要聚焦的按钮不可见(visibility: hidden
(。
如果元素可见,则问题中提到的代码有效。
谢谢你的帮助,祝你今天愉快。