我想总结一下li元素的宽度,但只有l。中的第一个lvl。
我的清单:
HTML
<ul id="top_menu">
<li>1a</li>
<li>1</li>
<li>1</li>
<li>1
<ul>
<li>2</li>
<li>2</li>
</ul>
</li>
<li>1</li>
<li>1
<ul>
<li>2</li>
<li>2</li>
</ul>
</li>
</ul>
的Javascript
var menu3 = 0;
$('ul#top_menu > li').each(function() {
menu3 += $('ul#top_menu > li').outerWidth(true);
});
alert("Total Width is " + menu3);
但是这段代码只将第一个元素加总6次。
此致
答案 0 :(得分:0)
您可以在每个函数中使用this
对象来计算宽度。
var menu3 = 0;
$('ul#top_menu > li').each(function() {
menu3 += $(this).outerWidth(true);
});
alert("Total Width is " + menu3);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="top_menu">
<li>1a</li>
<li>1</li>
<li>1</li>
<li>1
<ul>
<li>2</li>
<li>2</li>
</ul>
</li>
<li>1</li>
<li>1
<ul>
<li>2</li>
<li>2</li>
</ul>
</li>
</ul>
&#13;