这是我第一次来这里,所以我希望我不会脱落太愚蠢了!

我有一个非常简单的jQuery的问题:我有一个数据库生成基于UL的导航和我想的是包含其他列表来切换显示那些载名单列表项。的(产生的)的列表如下所示(WordPress的代码;忽略日本人):

<div class="block first">
<ul class="counts">
    <li class="cat-item cat-item-43">
        <a href="http://localhost/crg/?cat=43" title="View all posts filed under その他制作物">その他制作物</a>
    </li>
    <li class="cat-item cat-item-3">
        <a href="http://localhost/crg/?cat=3" title="View all posts filed under クライアント">クライアント</a>
        <ul class='children'>
            <li class="cat-item cat-item-4">
                <a href="http://localhost/crg/?cat=4" title="View all posts filed under マイクロソフト">マイクロソフト</a>
            </li>
            <li class="cat-item cat-item-9">
                <a href="http://localhost/crg/?cat=9" title="View all posts filed under 夢">夢</a>
            </li>
            <li class="cat-item cat-item-8">
                <a href="http://localhost/crg/?cat=8" title="View all posts filed under 生">生</a>
            </li>
        </ul>
    </li>
</ul>

和这里的jQuery的我写的: 首先,隐藏所有ul.children的内线li.cat项目的; 其次,应用切换功能和返回false,只有那些ul.children li.cat项目的,剩下中的链接在其默认的功能。

<script type="text/javascript">
$(document).ready(function() {
    var children = $("li.cat-item:has(ul.children)>ul.children").hide();
    $("li.cat-item:has(ul.children)").click(function(){
        $(this).find('ul.children').toggle();
        return false;
    });
});

问题是,“返回假”是越来越应用到里面的一切容器里的并没有什么我做的,似乎从选择中排除。任何人都知道我在做什么错了?

在预先感谢

有帮助吗?

解决方案

做的。

<script type="text/javascript">
$(document).ready(function() {
    var children = $("li.cat-item:has(ul.children)>ul.children").hide();
    $("li.cat-item:has(ul.children) > a").click(function(){
        $(this).siblings('ul.children').toggle();
        return false;
    });
});

我不得不靶向里内的“一”的标签,而不是利本身。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top