Javascript 将光标移动到enter上的下一个元素,并跟踪tabindex
我使用下面的代码移动到下一个元素。除了tabindex=-1之外,代码工作正常。它不会跳过tabindex设置为-1的元素Javascript 将光标移动到enter上的下一个元素,并跟踪tabindex,javascript,jquery,Javascript,Jquery,我使用下面的代码移动到下一个元素。除了tabindex=-1之外,代码工作正常。它不会跳过tabindex设置为-1的元素 $('body').on('keydown', 'input, select', function(e) { if (e.key === "Enter") { var self = $(this), form = self.parents('form:eq(0)'), focusable, next;
$('body').on('keydown', 'input, select', function(e) {
if (e.key === "Enter") {
var self = $(this), form = self.parents('form:eq(0)'), focusable, next;
focusable = form.find('input,a,select,button,textarea').filter(':visible');
next = focusable.eq(focusable.index(this)+1);
if (next.length) {
next.focus();
} else {
form.submit();
}
return false;
}
});
我一直在寻找解决方案,但没有找到。
任何人都可以帮忙。您只关注下一个元素,而不让浏览器处理它。因此,tabindex=-1不起作用 要使用HTML中指定的tabindex,还必须在Javascript中指定它(
:not([tabindex=“-1”])
):
您可以添加此代码引用的html吗?
focusable = form.find('input,a,select,button,textarea').filter(':not([tabindex="-1"]):visible');