2015-11-24 52 views
0

的长度这是示例列表:jQuery的:寻找混合列表

<ul> 
    <li>Item: 
     <ol> 
      <li>Point: 
       <div> 
        <ul> 
         <li>elem1</li> 
        </ul> 
       </div> 
      </li> 
     </ol> 
    </li> 
    <li>elem2</li> 
</ul> 
<ul> 
    <li>Point: 
     <div> 
      <ul> 
       <li>elem1</li> 
      </ul> 
     </div> 
    </li> 
</ul> 
<ul> 
    <li>simple list1</li> 
</ul> 

我有一个代码,找到从无序列表深度:

var n = 0 

$('ul').each(function(i){ 
    if (($(this).parents('ul').length + 1) > n) { n = $(this).parents('ul').length + 1; } 
}); 

但是做什么,如果超过一个列表,哪些是混合列表?

编辑:这里的混合列表表示ul列表和ol列表。

+4

_but做什么,如果一个以上的列表和混合名单?_什么是_mixed list_?什么是预期的输出? – Tushar

+0

什么是混合列表?你是否在列表中打电话列表混合列表? – Mayank

+0

告诉我们您在示例列表中考虑了哪些混合列表。 –

回答

1

关键是将ol添加到支票的选择器。

var n = 0 
 

 
$('ul, ol').each(function(i){ 
 
    if (($(this).parents('ul, ol').length + 1) > n) { n = $(this).parents('ul, ol').length + 1; } 
 
}); 
 

 
$('#result').html(n);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul> 
 
    <li>Item: 
 
     <ol> 
 
      <li>Point: 
 
       <div> 
 
        <ul> 
 
         <li> 
 
          elem1 
 
          <ol> 
 
          <li>elem1_1</li> 
 
          </ol> 
 
         </li> 
 
        </ul> 
 
       </div> 
 
      </li> 
 
     </ol> 
 
    </li> 
 
    <li>elem2</li> 
 
</ul> 
 
<ul> 
 
    <li>Point: 
 
     <div> 
 
      <ul> 
 
       <li>elem1</li> 
 
      </ul> 
 
     </div> 
 
    </li> 
 
</ul> 
 
<ul> 
 
    <li>simple list1</li> 
 
</ul> 
 

 
<hr /> 
 

 
<div id="result"></div>