0

如何找到特定 div 中具有大于 6 li 子级的所有 ul 元素并添加 UL 元素的属性(即 data-theme="d")

<div id="dicCntr">
    <ul id="ul1">
        <li id="li1">A</li>
        <li id="li2">A</li>
        <li id="li3">A</li>
        <li id="li4">A</li>
        <li id="li5">A</li>
        <li id="li6">A</li>
        <li id="li7">A</li>
        <li id="li8">A</li>
        <li id="li9">A</li>
    </ul>
    <ul id="ul2">
        <li id="li10">B</li>
        <li id="li11">B</li>
    </ul>
    <ul id="ul3">
        <li id="li12">C</li>
        <li id="li13">C</li>
        <li id="li14">C</li>
        <li id="li15">C</li>
        <li id="li16">C</li>
        <li id="li17">C</li>
        <li id="li18">C</li>
    </ul>
    <ul id="ul4">
        <li id="li19">D</li>
        <li id="li20">D</li>
    </ul>

</div>
4

2 回答 2

2
$('#dicCntr ul').filter(
    function() {
        return $(this).children().length > 6;
    }).attr('data-theme', 'd');
于 2012-12-08T21:45:44.637 回答
0

我知道这个问题专门说 jquery 但为什么不是常规的 javascript

 var ulHolder = document.getElementById('dicCntr')
uls = ulHolder.getElementsByTagName('ul');
for (i=0; i<uls.length; i++) {
    if (uls[i].children.length > 6) {
        uls[i].setAttribute('data-theme', 'd')      
    }
}
于 2012-12-09T01:57:17.183 回答