首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jquery:在单击时切换孩子

jquery:在单击时切换孩子
EN

Stack Overflow用户
提问于 2010-11-09 01:14:58
回答 2查看 9.2K关注 0票数 1

什么js/jquery代码会使下面的列表在单击"+“时切换子项?

代码语言:javascript
运行
复制
<ul>  
<li id="1" parent="0"><a href="#">1</a></li>  
    <li id="2" parent="0"><a href="#"> + </a><a href="#">2</a>  
        <ul parent="2">  
            <li id="23" parent="2"><a href="#">2.1</a></li>  
            <li id="50" parent="2"><a href="#"> + </a><a href="#">2.2</a>  
                <ul parent="50">  
                    <li id="123" parent="50"><a  href="#">2.50.1</a></li>  
                </ul>  
            </li>  
        </ul>  
    </li>
</ul>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-09 01:17:57

可以将.toggle().slideToggle().siblings()一起使用,如下所示:

代码语言:javascript
运行
复制
$("ul a:contains( + )").click(function() {
  $(this).siblings("ul").toggle();
});

You can test it out here。注意:尽管您的ID和属性无效,但您可能希望在此处使用data- attributes。此外,我建议给这些+链接一个类,以使选择器更有效,例如:

代码语言:javascript
运行
复制
<a href="#" class=".toggle"> + </a>

然后像这样绑定:

代码语言:javascript
运行
复制
$("ul a.toggle").click(function() {
  $(this).siblings("ul").toggle();
});
票数 5
EN

Stack Overflow用户

发布于 2010-11-09 01:18:27

像这样的东西

代码语言:javascript
运行
复制
$("ul a:contains('+')").click(function () {
  var $this = $(this);
  $this.siblings("ul").show();
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4126209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档