gpt4 book ai didi

javascript - 通过单击另一个展开/折叠 div

转载 作者:太空宇宙 更新时间:2023-11-04 15:00:17 24 4
gpt4 key购买 nike

我想创建一个 div,当单击一个完全独立的非父 div 元素时,它会展开和折叠。

下面是我喜欢并且一直在搞乱的扩展/折叠效果的示例。我不确定如何最好地修改下面的代码,这样我就可以点击位于侧边栏中的 div,并导致位于标题下方的另一个 div 展开/折叠,将其下方的所有内容向下推。

所讨论的展开/折叠 div 的内容可能是一个搜索栏,用户可以通过单击侧边栏按钮来显示/隐藏它。

$(".header").click(function () {

$header = $(this);
//getting the next element
$content = $header.next();
//open up the content needed - toggle the slide- if visible, slide up, if not slidedown.
$content.slideToggle(500, function () {
//execute this after slideToggle is done
//change text of header based on visibility of content div
$header.text(function () {
//change text based on condition
return $content.is(":visible") ? "Collapse" : "Expand";
});
});

});
.container {
width:100%;
border:1px solid #d3d3d3;
}
.container div {
width:100%;
}
.container .header {
background-color:#d3d3d3;
padding: 2px;
cursor: pointer;
font-weight: bold;
}
.container .content {
display: none;
padding : 5px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

<div class="container">
<div class="header"><span>Expand</span>

</div>
<div class="content">
<ul>
<li>I'm putting a search bar here.</li>

</ul>
</div>
</div>

最佳答案

$(".header").click(function() {
$('.content').slideToggle().toggleClass('active');
if ($('.content').hasClass('active')) {
$('.header span').text('Collapse');
} else {
$('.header span').text('Expand');
}
});
$('button').click(function(){
$(".header").trigger('click');
})
.container {
width:100%;
border:1px solid #d3d3d3;
}
.container div {
width:100%;
}
.container .header {
background-color:#d3d3d3;
padding: 2px;
cursor: pointer;
font-weight: bold;
}
.container .content {
display: none;
padding : 5px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

<div class="container">
<div class="header"><span>Expand</span>

</div>
<div class="content">
<ul>
<li>I'm putting a search bar here.</li>

</ul>
</div>
</div>
<button>another click</button>

关于javascript - 通过单击另一个展开/折叠 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35263219/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com