如何使用jquery向基本手风琴添加加号和减号
How to add plus minus symbol to a basic accordion using jquery?
我使用的是Luca Filosofi在这个线程中编写的基本jQuery手风琴。这是我的版本:
$('.product-details .post-body dl dt').on('click', function (e) {
e.preventDefault();
$(this).parent('dl').children('dd:visible').slideUp('fast');
$(this).nextUntil('dt').filter(':not(:visible)').slideDown('fast');
});
剧本写得很好。但是,我不知道如何在Title(例如:+Title)之前附加加号和减号文本(+
,-
),以确定是否显示内容。
我有下面的永久标记,它必须保持原样。不能添加更多的类或html,除非通过jQuery:
<dl>
<dt>Title</dt>
<dd>Description 01</dd>
<dd>Description 02</dd>
<dt>Title</dt>
<dd>Description 01</dd>
<dd>Description 02</dd>
<dd>Description 03</dd>
</dl>
当图标点击时,您可以切换图标,如下所示:
$('.product-details .post-body dl dt').on('click', function (e) {
e.preventDefault();
$(this).parent('dl').children('dd:visible').slideUp('fast');
$(this).nextUntil('dt').filter(':not(:visible)').slideDown('fast');
$(this).closest('i').toggleClass("icon-circle-plus icon-circle-minus");
});
您需要使用.slice()
获取dt
文本的最后一个字符。如果最后一个字符是+
,则将其更改为-
,如果是-
,则更改为+
。
$('dl dd').slideUp('fast');
$('dl dt').on('click', function () {
$(this).parent().children('dd:visible').slideUp('fast');
$(this).nextUntil('dt').not(':visible').slideDown('fast');
$(this).text(function(i, text){
return (text.slice(-1) == "-") ? (text.slice(0, -1) + " +") : (text.slice(0, -1) + " -");
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<dl>
<dt>Title +</dt>
<dd>Description 01</dd>
<dd>Description 02</dd>
<dt>Title +</dt>
<dd>Description 01</dd>
<dd>Description 02</dd>
<dd>Description 03</dd>
</dl>
相关文章:
- 当我尝试添加文本效果时,有东西阻止了JavaScript的运行'手风琴'在html文档中
- 将window.scrollTo添加到简单的jQuery手风琴中
- 动态地将额外的行添加到 jquery 手风琴中
- Twitter 引导程序:在开放手风琴标题中添加一个类
- 在引导手风琴上, 有没有办法在折叠时向标题添加固定的保存按钮.
- JQuery 手风琴在添加内容和对齐时遇到问题
- Dojo 使用 domConstruct 将声明性代码添加到现有手风琴中
- 在 Bootstrap 3 手风琴中添加动态闭合面板
- 将ng-click事件添加到angular ui手风琴中
- 在嵌套手风琴中添加淡入效果
- 添加“;x〃;隐藏当前打开的手风琴的图标
- 谷歌地图手风琴幻灯片,如何添加标记
- CSS手风琴->添加jquery以更改“;悬停”;切换,但JS没有;t注册
- 引导3活动类添加/移除手风琴容器外的按钮
- 如何将活动类添加到第一个手风琴
- 当以手风琴方式打开外部菜单项时,无法向第一个子菜单项添加新的颜色类
- 添加网页可访问性推特引导手风琴
- 添加一个手风琴在谷歌地图infoBubble(从谷歌地图实用程序库)
- 如何添加一个加号或减号手风琴在引导?手风琴关闭时显示加号,手风琴打开时显示减号
- 向Mootools手风琴元素添加活动类