Jquery接下来找不到下一个div?

Mat*_*iby 6 jquery

我有这个HTML结构

<img  width="25" height="25" src=/data/apple_logo.jpg alt=Chocolate />      
  <input class="cake_checkboxes" style="vertical-align: bottom;"  type="checkbox" name="option[232][]" value="23" id="option-value-23" />
  <label for="option-value-23"> Chocolate</label>
  <br />
<div style='display:none;' class="quantity">
......
Run Code Online (Sandbox Code Playgroud)

如果我做

$('.cake_checkboxes:first').next('div')
Run Code Online (Sandbox Code Playgroud)

要么

$('.cake_checkboxes:first').next('.quantity')
Run Code Online (Sandbox Code Playgroud)

我得到一个空值,但如果我这样做

$('.cake_checkboxes:first').next().next().next()
Run Code Online (Sandbox Code Playgroud)

我得到了我需要的div ...任何关于错误的想法或者是否有一种方法可以像jquery 最接近的方法一样遍历

Pau*_*aul 22

next()如果它与选择器匹配,则仅返回DOM中的下一个元素,否则返回空对象.因此,您唯一可以搜索使用的next()<label>.请改用:

$('.cake_checkboxes:first').nextAll('.quantity').first()
Run Code Online (Sandbox Code Playgroud)

jQuery文档: nextAll()

  • @Harry:是的,但是这会在支持`getElementsByClassName`的浏览器中降低速度.我想这只取决于你提供的浏览器. (2认同)