子に対するサブメニューの合計幅を計算しようとしています。次のコードは、最初のサブメニューでのみ正常に機能します。2 番目のサブメニューを機能させるには、幅を手動で +1 する必要があります。そうしないと、最後の項目が押し下げられます。
$('nav.primary').find('ul.sub-menu').each( function() {
var width = 0;
$(this).find('li').each( function() {
width += $(this).outerWidth();
});
$(this).css({
'width': width + 'px'
});
$(this).hide();
});
<li>
<a href="/oplossingen/">
Oplossingen<span class="fo icons-angle-down"></span>
</a>
<ul class="sub-menu">
<li>
<a href="/oplossingen/mvo-adviesdiensten/">
MVO Adviesdiensten
</a>
</li>
<li>
<a href="/oplossingen/co2-prestatieladder-advies/">
CO2-Prestatieladder Advies
</a>
</li>
</ul>
</li>
正しい例:
間違った例:
幅+1
背景色を除いて、奇数アイテムと偶数アイテムの間に他の違いはありません。
私の問題を解決できない次の同様の質問を見つけました: Calculate total width of Children with jQuery