Javascript 计算<;部门>;内部元素<;李>;
我需要知道每个Javascript 计算<;部门>;内部元素<;李>;,javascript,jquery,html,Javascript,Jquery,Html,我需要知道每个中有多少元素。比如说: <ul> <li> <div> Some image 1 </div> <div> Some image 2 </div> <div> Some image 3 </div> </li> <li> <div> Some image 4 </div>
中有多少元素。比如说:
<ul>
<li>
<div> Some image 1 </div>
<div> Some image 2 </div>
<div> Some image 3 </div>
</li>
<li>
<div> Some image 4 </div>
<div> Some image 5 </div>
</li>
<li>
<div> Some image 6 </div>
<div> Some image 7 </div>
<div> Some image 8 </div>
<div> Some image 9 </div>
</li>
</ul>
-
一些图片1
一些图片2
一些图片3
-
一些图片4
一些图片5
-
一些图片6
一些图片7
一些图片8
一些图片9
函数的输出:
First <li> has 3 <div>
Second <li> has 2 <div>
Third <li> has 4 <div>
第一个有3个
第二个 有2个
第三个 有4个
评论:
// Make an array when the input for every iteration is a <li>
$('li').map(
// Every element in the array is the amount <div>s inside the current <li>
return $(this).find('div').length;
// Produce the arry.
.get();
给定一个表示您的
,项的jQuery对象,您只需执行以下操作即可找到它包含的
的数量:
item.find('div').length
但是如果你想要一个精确输出的函数,你需要一个数字→ 英语图书馆。或者,如果您正好有三个,请将您的
作为列表
并执行以下操作:
var items = list.find('li');
'First <li> has ' + items.eq(0).find('div').length + ' <div>';
'Second <li> has ' + items.eq(1).find('div').length + ' <div>';
'Third <li> has ' + items.eq(2).find('div').length + ' <div>';
var items=list.find('li');
'第一个有'+项。等式(0)。查找('div')。长度+'';
'Second 有'+项。等式(1)。find('div')。length+'';
'第三个 有'+项。等式(2).查找('div')。长度+'';
$('li')。每个(函数(i){
$('li').each(function(i){
console.log('<li> ' + i + ' has ' + $(this).children('div').length + 'divs');
});
log(''+i+'有'+$(this).children('div').length+'divs');
});
为您提供现场演示而感到荣幸。这是证明它有效的必要条件。@NateDSaint。事实上,虽然我非常喜欢演示,但你可以看到它是有效的。我应该添加注释吗?@gdoron以后如何访问此数组的元素<代码>长度[0]、长度[1]和长度[3]
?@CuriousProgrammer。我没听清你的问题。是的,这是一个数组。@CuriousProgrammer。我想你应该问一个新问题,它并不像你想的那么简单,而且可能可以用比你想做的简单得多的方法来完成。文字输出是第一个
,第二个
等等。。需要吗?@Esailija。如果它是干的,它将不会是干的,除非你使用非干插件。。。我不想把这些都写下来…不,我需要知道做if陈述的数量
item.find('div').length
var items = list.find('li');
'First <li> has ' + items.eq(0).find('div').length + ' <div>';
'Second <li> has ' + items.eq(1).find('div').length + ' <div>';
'Third <li> has ' + items.eq(2).find('div').length + ' <div>';
$('li').each(function() {
console.log($('div', this).length);
});
$('li').each(function(i){
console.log('<li> ' + i + ' has ' + $(this).children('div').length + 'divs');
});