0

如果我将 .click() 触发器嵌套在另一个 div 中(名称为 div.click),如何折叠 div.collapse?

如果我的 .click() 触发器与 div.collapse 在同一个 div 中,我的脚本就可以工作,这是我的#main。现在我想把我的触发器放在一个名为“click”的 div 中。这是我想要的结构:

<div id="main">    
    <div class="collapse" style="display:none;">
    my content
    </div>
    <div class="click">
    <a title="Click here to see the collapse div" alt="Expand" class="expand" href="javascript:void(0);">click here</a>
    </div>
</div>

到目前为止,这是我的 jquery 代码,因为我不知道如何让它在 html 结构中搜索一个 div:

  $jq("a.expand").click(function() 
  {  
    // hides matched elements if shown, shows if hidden 
    $jq("a.expand").prev("div.collapse")[o.method](o.speed); 
    $jq("a.expand").prev("div.collapse").prev()[o.method](o.speed); 

    return false;
  });

我希望有人可以帮助我,谢谢!

4

2 回答 2

0

相反,您可以使用.toggle().

 $jq("a.expand").click(function() 
  {  
    // hides matched elements if shown, shows if hidden === Toggle
    $jq(".collapse").toggle(); 

    return false;
  });
于 2013-07-23T15:07:19.833 回答
0
$jq("a.expand").click(function(e)  {
    e.preventDefault();  
    // hides matched elements if shown, shows if hidden 
    $jq(this).parent().prev()[o.method](o.speed);
});

$(this)是被点击的元素。parent()选择直接父级。prev()选择紧接在目标元素之前的兄弟。我也return false;e.preventDefault().

于 2013-07-23T15:08:58.370 回答