順序付けられていないリストの子の数をカウントする単純な js スクリプトがあります。クラス「hiddenItem」のdivを含む子(li)をカウントしないように、スクリプトを変更しようとしています。ここにリストとjsがあります。
<ul id="dlist" class="sortable">
<li id="listItem_000002">
<div>
<div><a class="itemCollapse"></a>
</div>Item 2</div>
</li>
<li id="listItem_000003">
<div>
<div><a class="itemCollapse"></a>
</div>Item 3</div>
</li>
<li id="listItem_000009">
<div>
<div><a class="itemCollapse"></a>
</div>Item 9</div>
</li>
<li id="listItem_000012">
<div class="hiddenItem">
<div><a class="itemCollapse"></a>
</div>Item 12 (Hidden)</div>
</li>
</ul>
<br>
<br>
<a class="count">Count</a>
.
$(".count").click(function () {
var tcount = $("#dlist").children("li").length;
alert(tcount);
});
この例では、js は 4 つのアイテムがあることを警告します。しかし、クラス「hiddenItem」のdivを含む最後のリスト項目のために、3つの項目を警告するようにコードを変更しようとしています。私は .filter() だけでなく、他のいくつかの横断方法を使用しようとしましたが、うまくいきませんでした。誰でも良いアイデアがありますか?
これが機能するフィドルです:http://jsfiddle.net/YeDdq/1/
どんな助けでも大歓迎です。ありがとう!