Javascript 我能';t句柄选择正确的div(使用Jquery)

Javascript 我能';t句柄选择正确的div(使用Jquery),javascript,jquery,jquery-selectors,Javascript,Jquery,Jquery Selectors,$(文档).ready(函数(){ $(“.myClass”)。单击(函数(){ $(.myClass),$(this)).first().scrollIntoView({behavior:“smooth”,block:“start”}); }); }); .myClass{ 光标:指针; } 我点击这个div 一些随机文本 一些随机文本 我想滚动到此分区 这将起作用,无需jQuery 以下是小提琴的例子: JS 让scrollToNext=0; const elements=document

$(文档).ready(函数(){
$(“.myClass”)。单击(函数(){
$(.myClass),$(this)).first().scrollIntoView({behavior:“smooth”,block:“start”});
});
});
.myClass{
光标:指针;
}

我点击这个div
一些随机文本
一些随机文本
我想滚动到此分区

这将起作用,无需jQuery

以下是小提琴的例子:

JS

让scrollToNext=0;
const elements=document.querySelectorAll('.myClass');
document.getElementById('btn')。addEventListener('click',()=>{
++滚动文本
if(滚动文本<元素长度){
元素[scrollToNext].scrollIntoView();
}
})
说明:

单击按钮后增加计数器以滚动到所需的元素(按指定的类名查找元素)

每次单击发生时,计数器将递增一,因此选择下一个元素。当计数器达到找到的元素的最大数量时,它不再增加。

  • 直到您的html结构
    .myClass
    在其级别上没有任何下一个
    .myClass
    。。请参阅下一个代码
$('.myClass')。在('click',function()上{
$(本)
.parent()//选择父div
.nextAll('div:has(.myClass)//选择下一个包含.myClass的div
.first()//下一步只选择一个div
.find('.myClass')//在此div中查找.myClass
.addClass('Next');//向其中添加类
});
。下一步{
背景:红色;
颜色:#fff;
}

我的班级
其他
其他
我的班级
其他
其他
我的班级

感谢您的帮助,很遗憾,我只能接受一个答案来解决问题,但您的解决方案非常有用,因为您不应该选择
btn
作为(希望是)ID元素。始终使用
getElement*
querySelector*
@RokoC.Buljan这只是一个如何解决OP问题的示例。。。当然,我应用了您的建议并更新了fiddle.js示例
let scrollToNext = 0;
const elements = document.querySelectorAll('.myClass');

document.getElementById('btn').addEventListener('click', () => {
  ++scrollToNext
  if (scrollToNext < elements.length) {
    elements[scrollToNext].scrollIntoView();
  }
})