(jQuery/选择器)选择指定类后的元素
我正在尝试使用插件 它需要下一页链接的选择器。我想如果导航如下所示(jQuery/选择器)选择指定类后的元素,jquery,Jquery,我正在尝试使用插件 它需要下一页链接的选择器。我想如果导航如下所示 <ul> <li><a href="#" class="active">page 1</a></li> <li><a href="#" class="next">page 2</a></li> <li><a href="#">page 3</a></li&g
<ul>
<li><a href="#" class="active">page 1</a></li>
<li><a href="#" class="next">page 2</a></li>
<li><a href="#">page 3</a></li>
<li><a href="#">page 4</a></li>
<li><a href="#">page 5</a></li>
</ul>
如何选择第2页链接假设
。active
表示当前页面要选择旁边的节点。active,可以使用next()函数:
$('.active').next();
但是为什么不添加一个始终存在的上一个/下一个列表项呢 要选择.active旁边的节点,可以使用next()函数:
$('.active').next();
但是为什么不添加一个始终存在的上一个/下一个列表项呢 我认为您必须在
标签中添加一个唯一的id
,才能使用插件
干杯,我认为你必须在你的
标签中添加一个唯一的id
,才能使用插件
干杯,试试看
$('.active').parent().next().children().eq(0);
试一试
$(“li:has(.active)+li a”)
将执行此任务。例如
alert($("li:has(.active) + li a").text());
$(“li:has(.active)+li a”)
将执行此任务。例如
alert($("li:has(.active) + li a").text());
next()方法“获取匹配元素集中每个元素的紧随其后的同级,可选地由选择器筛选。”活动类没有直接同级Yes it。它着眼于元素,而不是古典主义,尽管这是正确的想法。可能类似于$('.active').parent().next().children().first()(是的,有点长而且复杂,但它可以工作。)@John Hartsock活动类的直接同级是其他
.active
类位于
中的元素上。您的方法将.active
直接放在
上。next()方法“获取匹配元素集中每个元素的紧随其后的同级,可选地通过选择器进行筛选。”活动类没有直接同级是的,它是。它着眼于元素,而不是古典主义,尽管这是正确的想法。可能类似于$('.active').parent().next().children().first()(是的,有点长而且复杂,但它可以工作。)@John Hartsock活动类的直接同级是其他节点。我的示例是有效的,我已经整理了一个片段来演示:(不要对警报感到惊讶;)@Peter-您的JSFIDLE更改了OP的HTML。仔细看看。.active
类位于
中的元素上。您将.active
直接放在
上。我碰巧觉得,由于我能够使用上一个/下一个链接,这是很直接的,但我同意,如果我不得不使用.active
类,这可能会更好。。。嗯,但是该选择器会选择所有同级而不是单个下一个链接吗?此解决方案适用于您在OP中的示例。如果您要在LI
中有多个锚点,并且需要在下一个LI
中以第一个锚点为目标,那么您必须将:first
添加到语句中。例如,$(“li:has(.active)+li:a:first”).text()代码>我碰巧觉得,既然我能够使用上一个/下一个链接,这是直接的,但我同意,如果我被限制使用.active
类,这可能会更好。。。嗯,但是该选择器会选择所有同级而不是单个下一个链接吗?此解决方案适用于您在OP中的示例。如果您要在LI
中有多个锚点,并且需要在下一个LI
中以第一个锚点为目标,那么您必须将:first
添加到语句中。例如,$(“li:has(.active)+li:a:first”).text()代码>