首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >eq()方法问题

eq()方法问题
EN

Stack Overflow用户
提问于 2011-06-08 16:17:33
回答 3查看 117关注 0票数 0

例如,我有一个HTML结构:

代码语言:javascript
复制
<ul>
    <li><a class="ac_list_a">some text</a></li>
    <li><a class="ac_list_a">some text</a></li>
    <li><a class="ac_list_a">some text</a></li>
    <li><a class="ac_list_a ac_current_a">some text</a></li>
    <li><a class="ac_list_a">some text</a></li>
    <li><a class="ac_list_a">some text</a></li>
</ul>

我需要从ac_list_a获得下一个或以前的ac_current_a

我试过这样做:

代码语言:javascript
复制
var all_a = $('.ac_list_a,.ac_current_a').eq('.ac_current_a').next();

但不起作用。

你怎么解决这个问题?

更新

也就是说,我当然可以用一种愚蠢的方式来完成它,方法是将类分配给所有li元素,然后使用

代码语言:javascript
复制
parents(class).next().find(a.class)

但是否有可能以更有活力的方式来实现这一目标?因为HTML的结构将来可能会发生变化。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-08 16:37:21

eq接受函数的整数索引,而不是选择器。但是,您可以使用index函数查找该索引,然后使用eq

代码语言:javascript
复制
var index = $('.ac_list_a,.ac_current_a').index($('.ac_current_a'));
var all_a = $('.ac_list_a,.ac_current_a').eq(index+1);
票数 0
EN

Stack Overflow用户

发布于 2011-06-08 16:21:00

我可能会用:

代码语言:javascript
复制
$('.ac_current_a').parent().next().children()

演示:jsfiddle.net/dL87J/

票数 4
EN

Stack Overflow用户

发布于 2011-06-08 16:21:55

删除eq()

代码语言:javascript
复制
$('.ac_list_a .ac_current_a').parent().next();
$('.ac_list_a .ac_current_a').parent().prev();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6281969

复制
相关文章

相似问题

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