Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jQuery折叠列表中的元素?_Javascript_Jquery_Html Lists_Html - Fatal编程技术网

Javascript 如何使用jQuery折叠列表中的元素?

Javascript 如何使用jQuery折叠列表中的元素?,javascript,jquery,html-lists,html,Javascript,Jquery,Html Lists,Html,我有以下清单: <div class='sidebar-listview ui-listview' data-role='listview' data-theme='c'> <li class='ui-li ui-li-static ui-body-c ui-li-has-icon io-sidebar-section io-sidebar-section-collapsed io-sidebar-section-advanced-toggle' id='0aa21

我有以下清单:

<div class='sidebar-listview ui-listview' data-role='listview' data-theme='c'>
      <li class='ui-li ui-li-static ui-body-c ui-li-has-icon io-sidebar-section io-sidebar-section-collapsed io-sidebar-section-advanced-toggle' id='0aa210f2-e811-4bae-aac0-649bf87fb240'>
        <img src='/document/d5308dfc-af9e-41a4-ab0f-9b5ff6c4c43e/latest' class='ui-li-icon ui-li-thumb' height='16' width='16'/>
        <div class='io-sidebar-link-text'>Activities</div>
      </li>
      <span io-sidebar-section='0aa210f2-e811-4bae-aac0-649bf87fb240'>
        <li class='ui-li ui-li-static ui-body-d ui-li-has-icon io-sidebar-link io-sidebar-link-standard' data-theme='d' io-sidebar-section='0aa210f2-e811-4bae-aac0-649bf87fb240' io-object-view='/cms?url=ui/object&object=34029fec-b949-3780-b9e6-9522413b9f2c' io-record-view='/cms?url=ui/record&object=34029fec-b949-3780-b9e6-9522413b9f2c' style='display: block'>
          <img src='/document/140075b9-878e-4fc8-9ed6-ac422046accf/latest' class='ui-li-icon ui-li-thumb' height='16' width='16'/>
          <div class='io-sidebar-link-text'>Events</div>
        </li>
        <li class='ui-li ui-li-static ui-body-d ui-li-has-icon io-sidebar-link io-sidebar-link-standard' data-theme='d' io-sidebar-section='0aa210f2-e811-4bae-aac0-649bf87fb240' io-object-view='/cms?url=ui/object&object=db13a9ad-2494-34bb-8a59-cb99fd308051' io-record-view='/cms?url=ui/record&object=db13a9ad-2494-34bb-8a59-cb99fd308051' style='display: block'>
          <img src='/document/423fc17f-08b2-46bb-a1db-a5395cd63b83/latest' class='ui-li-icon ui-li-thumb' height='16' width='16'/>
          <div class='io-sidebar-link-text'>Tasks</div>
        </li>
        <li class='ui-li ui-li-static ui-body-d ui-li-has-icon io-sidebar-link io-sidebar-link-standard' data-theme='d' io-sidebar-section='0aa210f2-e811-4bae-aac0-649bf87fb240' io-object-view='/cms?url=ui/object&object=23505d2a-bf3b-11e0-8058-001ec93afa2c' io-record-view='/cms?url=ui/record&object=23505d2a-bf3b-11e0-8058-001ec93afa2c' style='display: block'>
          <img src='/document/f7cd2d4c-1bbe-4131-b1bb-b6bff1e9bea5/latest' class='ui-li-icon ui-li-thumb' height='16' width='16'/>
          <div class='io-sidebar-link-text'>Projects</div>
        </li>
        <li class='ui-li ui-li-static ui-body-d ui-li-has-icon io-sidebar-link io-sidebar-link-advanced' data-theme='d' io-sidebar-section='0aa210f2-e811-4bae-aac0-649bf87fb240' io-object-view='/cms?url=ui/object&object=5e0d648c-bf52-11e0-b7e6-001ec93afa2c' io-record-view='/cms?url=ui/record&object=5e0d648c-bf52-11e0-b7e6-001ec93afa2c' style='display: none'>
          <img src='/document/8dbc2454-a2f8-47b0-ba32-d5b8552c0160/latest' class='ui-li-icon ui-li-thumb' height='16' width='16'/>
          <div class='io-sidebar-link-text'>Milestones</div>
        </li>
      </span>

  • 活动
  • 事件
  • 任务
  • 项目
  • 里程碑

  • 如何捕获“io侧边栏部分已折叠”click事件,并使其在范围内折叠其下的所有内容?

    我认为这应该可以:

    var el = $('.io-sidebar-section-collapsed');
    el.click(function() {
        el.next().toggle();
    });
    
    如果不想切换显示而只是折叠,请将
    .toggle
    替换为
    .hide

    编辑:再次查看您的代码,我不确定它是否有效,因为您的标记无效。您只需删除span并将上面的代码替换为:

    var el = $('.io-sidebar-section-collapsed');
    el.click(function() {
        el.next().toggle();
        el.next().next().toggle();
    });
    

    我认为这应该奏效:

    var el = $('.io-sidebar-section-collapsed');
    el.click(function() {
        el.next().toggle();
    });
    
    如果不想切换显示而只是折叠,请将
    .toggle
    替换为
    .hide

    编辑:再次查看您的代码,我不确定它是否有效,因为您的标记无效。您只需删除span并将上面的代码替换为:

    var el = $('.io-sidebar-section-collapsed');
    el.click(function() {
        el.next().toggle();
        el.next().next().toggle();
    });