javascript - 激活引导折叠时切换 Inline Chevron Down
问题描述
我不确定标题是否有意义,但从 PHP 中,我在一个循环中回显这个 HTML:
<a href='#' data-toggle='collapse' data-target='#myid'>
<span class='fa fa-caret-down'></span>
</a>
<div id='myid' class='collapse'>Some Content</div>
我希望在单击时fa-caret-down
更改为fa-caret-up
,反之亦然。我希望代码是内联的,所以我可以在这个实例中输出它。我怎样才能做到这一点?
解决方案
您可以将onClick
内联事件添加到您的锚点并附加一个在类之间切换的函数,例如:
function toggleClass(self) {
$('span', self).toggleClass('fa-caret-down fa-caret-up');
}
<link href="http://netdna.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href='#' data-toggle='collapse' data-target='#myid' onClick="toggleClass(this)">
<span class='fa fa-caret-down'></span>
</a>
<div id='myid' class='collapse'>Some Content</div>
建议
最好在所有锚点中使用一个公共类,并将点击事件附加到这个公共类,例如:
<a href='#' data-toggle='collapse' data-target='#myid' class="icon_toggle">
<span class='fa fa-caret-down'></span>
</a>
<div id='myid' class='collapse'>Some Content</div>
在您的 js 代码中,您应该附加使用 jQuery 方法在两个类之间切换的单击事件,toogleClass()
例如:
$('body').on('click', '.icon_toggle', function(){
$('span', this).toggleClass('fa-caret-down fa-caret-up');
});
推荐阅读
- flutter - Flutter 三元条件为 null 而不是 bool 的子类型
- mysql - 如何从 mySQL 数据库中只获取一个对象?
- c# - 使用特定格式格式化日期
- xaml - VS2019 或 VS2022 中的 WinUI 项目没有 XAML 热重载
- python - Python Snowflake 连接器无法在 Azure VM 上连接
- spring-boot - 如何通过 Spring Boot 的 rest 调用在数据准备好时传输?
- r - 如何创建两个数字列,每个列都包含字符变量中的一个数字
- python - 转换数据框
- php - Woocommerce 产品类别列表
- javascript - 如何使用图像气泡创建滚动图像拼贴?