首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在带有索引的选择器上使用Jquery遍历方法?

如何在带有索引的选择器上使用Jquery遍历方法?
EN

Stack Overflow用户
提问于 2018-09-06 03:20:11
回答 2查看 23关注 0票数 1

我正在为我的网站中的键盘导航创建一个“漫游标签索引”,我正在努力获取当前"label“元素的前一个元素。

示例代码:

代码语言:javascript
复制
$('section').focus(function(){
  var elements = $(this).find('label');
  var i = 0;
  elements[i].focus();
  ....
});

然后我有一个keydown e.which开关,可以为不同的箭头键修改索引。

但是当用户按空格键时,我无法获得相关的输入,这是输入的前一个元素,因为它是一个数组。

我怎样才能做到等同于:

代码语言:javascript
复制
elements[5].prev();

并获取第五个标签的前一个元素

EN

回答 2

Stack Overflow用户

发布于 2018-09-06 03:22:49

您遇到的问题是,在jQuery对象上使用方括号表示法会返回底层的Element对象,而不是jQuery对象。

要执行所需的操作,请使用eq()

代码语言:javascript
复制
$('section').focus(function(){
  var elements = $(this).find('label');
  var i = 0;
  var $el = elements.eq(i).focus();

  // ...

  var prevElement = elements.eq(5).prev();
});

您可以在文档中看到更多信息:http://api.jquery.com/eq

票数 1
EN

Stack Overflow用户

发布于 2018-09-06 03:24:36

使用elements.eq(5)而不是elements[5]来检索正确的jQuery元素,而不是原始的DOM元素。

Reference for eq

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52192071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档