javascript - jQuery find() 方法不适用于一个(!)类

标签 javascript jquery

jQuery 的 find() 方法不适用于除我的类 .szenenkasten 之外的所有内容。 这根本没有任何意义......

简化的源代码:

HTML

<ul class="NavBar">
    <li></li>  
    <li></li> 
    <li></li> 
    <li></li> 
    <li></li>         
</ul>

<span class="szenenkasten"></span>
<span class="szenenkasten"></span>
<span class="szenenkasten"></span>
<span class="szenenkasten"></span>
<span class="szenenkasten"></span>

jQuery

alert($('.NavBar').find('li').length);
 //returns 5
alert($('.szenenkasten').find('span').length);
 //returns 0
alert($('span').find('.szenenkasten').length);
 //returns 0
alert($('span.szenenkasten').length);
//returns 5

最佳答案

find在您的 jquery 元素的后代中查找。在这里,您的跨度不是后代,而是相同的元素。

不要使用查找,而是在此处过滤:

alert($('.szenenkasten').filter('span').length);

或简单地

alert($('span.szenenkasten'));

关于javascript - jQuery find() 方法不适用于一个(!)类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15619577/

相关文章:

javascript - Angular JS : why {{objA. objB.date | date :'dd.MM.yyyy HH:mm' }} 需要多少时间?

javascript - Google 电子表格脚本中的用户输入

javascript - typeahead.js 结果是指定的 div

jquery - 灵活的 div 高度主要内容

javascript - jQuery:选择器无法在 ajax 下载页面上工作

javascript - 选择两个元素时创建效果?

javascript - 给定输入以绘制具有选定背景的矩形 Canvas

javascript - 如何在特定时间后加载 Canvas 数组?

javascript - 将 CSS 附加到头部?

javascript - div 元素上不存在追加