Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery按类名查找DOM中的下一个匹配项_Javascript_Jquery_Html_Dom - Fatal编程技术网

Javascript jQuery按类名查找DOM中的下一个匹配项

Javascript jQuery按类名查找DOM中的下一个匹配项,javascript,jquery,html,dom,Javascript,Jquery,Html,Dom,使用jQuery,我需要通过其类名动态查找DOM中给定元素的下一个匹配项,而不考虑DOM结构。这意味着所讨论的元素可以在DOM中随机分散,而没有公共父元素。在页面加载后的任何时候都可以向DOM中添加额外的元素,所以我需要避免获取页面加载时的元素列表并进行迭代。有什么想法吗?试试看 您可以将.nextAll()与:first一起使用,方法如下: $('.cls').nextAll('.cls:first') 其中.cls是dom元素的类名 演示:使用当前元素的索引(),传递集合的选择器,并添加1

使用jQuery,我需要通过其类名动态查找DOM中给定元素的下一个匹配项,而不考虑DOM结构。这意味着所讨论的元素可以在DOM中随机分散,而没有公共父元素。在页面加载后的任何时候都可以向DOM中添加额外的元素,所以我需要避免获取页面加载时的元素列表并进行迭代。有什么想法吗?

试试看

您可以将
.nextAll()
:first
一起使用,方法如下:

$('.cls').nextAll('.cls:first')
其中
.cls
是dom元素的类名


演示:

使用当前元素的
索引()
,传递集合的选择器,并添加1以获得下一个匹配项:

var index = $('div.example:first').index('div.example') + 1;
var $next = $('div.example').eq(index);
不久前我也有过同样的经历


请发布你的html?或者使用一些示例代码询问您可以只引用具有特定类名的相应元素,然后调用
.next()
,以获得具有类似类名的下一个元素。参考:没错
.next('class_name')
就可以了。只有当下一次出现的元素总是同级元素时,才可能出现重复,而同级元素不是case@billyonecan是的,你是正确的,因为OP没有发布任何标记,所以我建议这样做。“我需要通过其类名在DOM中动态查找给定元素的下一个匹配项,而不管DOM结构如何”只有在下一个匹配项始终是下一个直接同级项时才起作用。你说得对。我将修改它
var givenElement =$('.myClass').eq(0);


//Next Occ
givenElement.next('.myClass')
var index = $('div.example:first').index('div.example') + 1;
var $next = $('div.example').eq(index);