- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
让以下代码可以正常工作并切换可折叠。问题出在font Awesome icon
。如果单击 +
符号,它将展开卡片及其工作,但不会更改为 -
符号。
编辑
只有 1 个可折叠窗口会打开,并且事件的可折叠窗口必须带有 -
符号,另一个是 +
符号,依此类推。
我的语法正确吗?
$(".colHide").click(function (e) {
$(this).toggleClass("fa fa-plus").toggleClass("fa fa-minus");
setTimeout(function () {
$(".clsColHide").find("div.show").removeClass("show").fadeOut("slow", 100);
$(".colHide ").removeClass().addClass("fa fa-plus float-right colHide");
if ($(this).hasClass("fa fa-plus"))
$(e.target).removeClass().addClass("fa fa-minus float-right colHide");
}, 100);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet"/>
<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" type="text/css" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<div class="col-md-12 clsColHide">
<div id="card_one" class="card">
<div class="card-header bg-success">
<h3 class="card-title">
text 1
<a class="fa fa-minus float-right colHide" id="min" data-toggle="collapse" data-target="#collapse1" href="#collapseOne"></a>
<a class="custom-control custom-checkbox float-right">
<input type="checkbox" class="custom-control-input" id="complied0" name="complied0" value="true">
<label class="custom-control-label font-weight-normal" for="complied0">
Complied
</label>
</a>
</h3>
</div>
<div id="collapse1" class="collapse show pt-3 pl-4 pr-4" data-parent="#accordion">
partial 1
</div>
</div>
</div>
<div class="col-md-12 clsColHide">
<div id="card_one" class="card">
<div class="card-header bg-success">
<h3 class="card-title">
text 2
<a class="fa fa-plus float-right colHide" id="min" data-toggle="collapse" data-target="#collapse2" href="#collapseOne"></a>
<a class="custom-control custom-checkbox float-right">
<input type="checkbox" class="custom-control-input" id="Complied0" name="Complied0" value="true">
<label class="custom-control-label font-weight-normal" for="Complied0">
Complied
</label>
</a>
</h3>
</div>
<div id="collapse2" class="collapse pt-3 pl-4 pr-4" data-parent="#accordion">
partial 2
</div>
</div>
</div>
<div class="col-md-12 clsColHide">
<div id="card_one" class="card">
<div class="card-header bg-success">
<h3 class="card-title">
text 3
<a class="fa fa-plus float-right colHide" id="min" data-toggle="collapse" data-target="#collapse3" href="#collapseOne"></a>
<a class="custom-control custom-checkbox float-right">
<input type="checkbox" class="custom-control-input" id="Complied0" name="Complied0" value="true">
<label class="custom-control-label font-weight-normal" for="Complied0">
Complied
</label>
</a>
</h3>
</div>
<div id="collapse3" class="collapse pt-3 pl-4 pr-4" data-parent="#accordion">
partial 3
</div>
</div>
</div>
最佳答案
您所需要的只是 not selector所以你当前的元素不会更新
$(".colHide").click(function (e) {
debugger;
if($(this).hasClass("fa-minus")){
$(this).removeClass("fa fa-minus").addClass("fa fa-plus")
}else{
$(this).removeClass("fa fa-plus").addClass("fa fa-minus");
}
$(".colHide").not(this).removeClass("fa fa-minus").addClass("fa fa-plus")
setTimeout(function () {
$(".clsColHide").find("div.show").removeClass("show").fadeOut("slow", 100);
}, 100);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet"/>
<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" type="text/css" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<div class="col-md-12 clsColHide">
<div id="card_one" class="card">
<div class="card-header bg-success">
<h3 class="card-title">
text 1
<a class="fa fa-minus float-right colHide" id="min" data-toggle="collapse" data-target="#collapse1" href="#collapseOne"></a>
<a class="custom-control custom-checkbox float-right">
<input type="checkbox" class="custom-control-input" id="complied0" name="complied0" value="true">
<label class="custom-control-label font-weight-normal" for="complied0">
Complied
</label>
</a>
</h3>
</div>
<div id="collapse1" class="collapse show pt-3 pl-4 pr-4" data-parent="#accordion">
partial 1
</div>
</div>
</div>
<div class="col-md-12 clsColHide">
<div id="card_one" class="card">
<div class="card-header bg-success">
<h3 class="card-title">
text 2
<a class="fa fa-plus float-right colHide" id="min" data-toggle="collapse" data-target="#collapse2" href="#collapseOne"></a>
<a class="custom-control custom-checkbox float-right">
<input type="checkbox" class="custom-control-input" id="Complied0" name="Complied0" value="true">
<label class="custom-control-label font-weight-normal" for="Complied0">
Complied
</label>
</a>
</h3>
</div>
<div id="collapse2" class="collapse pt-3 pl-4 pr-4" data-parent="#accordion">
partial 2
</div>
</div>
</div>
<div class="col-md-12 clsColHide">
<div id="card_one" class="card">
<div class="card-header bg-success">
<h3 class="card-title">
text 3
<a class="fa fa-plus float-right colHide" id="min" data-toggle="collapse" data-target="#collapse3" href="#collapseOne"></a>
<a class="custom-control custom-checkbox float-right">
<input type="checkbox" class="custom-control-input" id="Complied0" name="Complied0" value="true">
<label class="custom-control-label font-weight-normal" for="Complied0">
Complied
</label>
</a>
</h3>
</div>
<div id="collapse3" class="collapse pt-3 pl-4 pr-4" data-parent="#accordion">
partial 3
</div>
</div>
</div>
关于javascript - 如何在 Bootstrap 4 中切换 font-awesome 图标和可折叠图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52473117/
我正在尝试创建一个无序列表,其中每个 包含另一个无序列表。我想要触发子菜单向下滑动的列表项有类 mobile-collapse子菜单有类 mobile-drop-menu 。这是我的 jquery 代
我使用 PMD检查我的代码。在大多数情况下,它给了我非常有用的提示,但我无法弄清楚在以下情况下可以改进什么。 原始代码如下所示: if ((getSomething() != null && getS
需要一些 jquery/js/jsp 功能的帮助.. 我有一个可折叠的表格脚本: (function($){ $.fn.extend({ setupCollapstable: funct
我使用 CSS 和 Javascript 创建了一个 Accordion ,但我不知道如何在选择不同的 Accordion 后折叠打开的 Accordion 。我试过在 Javascript 中使用可
我使用 CSS 和 JS 编写了一个可折叠按钮,我想将一个按钮嵌套在另一个按钮中。 是否可以动态调整第一个/外部按钮的高度,以便在打开第二个/内部按钮时,第一个按钮的高度增加第二个按钮的高度? 这是我
我正在使用 jQuery 创建一个导航系统。我想要实现的是在页面加载时显示父元素并隐藏子元素。我做得非常简单。 然而,当我在其他父元素之间切换时,我希望能够隐藏之前的子元素,以便我只能打开一个 一次。
我正在尝试匹配这个设计 点击卡片应该展开 我不能用卡片包裹扩展 block ,因为扩展 block 基本上只有一行,我试着按照这个例子 flutter_catalog 我在谷歌上搜索了很多,但找不到我
我正在尝试切换 div 以使其可见/隐藏。我正在制作一个排行榜,我想打开它,但只能在单击时打开。 test fu
我正在使用 Materialize CSS 并使用可折叠的 Accordion 式元素 ( http://materializecss.com/collapsible.html )。 出于某种原因,当
我有一个递归 TreeView ,它从数据库中提取所有信息,并且想了解如何使其可折叠。我尝试使用 Jquery 和 Javascript,但都没有任何效果。不确定是我的错误还是其他原因。 这是我的基本
我收到异常“可折叠 if 语句”。 通过以下代码中的 Sonar 。 if(getSomething().equals(getSomething()){ if(getsomehing.contai
我正在制作 Accordion 以在 Angular 应用程序中使用 javascript 制作可折叠的 div.. 为此,如果单击Parent One 或任何其他父名称上的按钮未打开它.. HTML
我正在将 Ant Design 与 React 一起使用。 Ant Design 有一个菜单组件:https://ant.design/components/menu/ 是否可以使菜单不可折叠/展开?
我想展示这个可折叠 Accordion 的第一个元素。我在互联网上做了一些研究,但徒劳无功 Aller au dossier personnel
考虑以下 foldMap 的签名 foldMap :: (Foldable t, Monoid m) => (a -> m) -> t a -> m 这与“绑定(bind)”非常相似,只是交换了参数:
使用“fieldsets”,您可以通过指定 CSS 类“collapse”使其可折叠。如何对“内联”做同样的事情?谢谢! 最佳答案 在 Django 1.10+ 中: class MyModelInl
有人已经用 YUI dataTable 制作了如下示例的脚本吗? 示例: http://extjs.com/deploy/dev/examples/tree/column-tree.html http
好吧,有些事情很奇怪,我无法弄清楚。假设我有一些类别,每个类别都有一些项目,全部放入字典中。 import wx nyoom = {} nyoom['spiders'] = ['Yellow Sac'
我正在尝试实现一种可折叠的 StackLayout。每次用户单击按钮时,它都会展开或折叠堆栈布局以显示/隐藏更多详细信息。 我能够通过下面的代码实现更多/更少的效果,但它看起来不对而且效果也不是很好,
我的布局包含顶部的水平 recyclerView 和 viewPager。 ViewPager 在其每个选项卡中都有一个 recyclerView。 我想在用户滚动布局时折叠顶部水平回收器 View
我是一名优秀的程序员,十分优秀!