javascript - 包括加号+/减号到一个简单的切换菜单 jquery

标签 javascript jquery html css

我有以下 html 代码:

            <div class="slide-button" data-content="panel1">
            <p><span id="panel-icon">+</span>Test1</p>
            </div>  
            <div id="panel1" style="display: none">
            <p> Test jquery menu1 </p>
            </div>


            <div class="slide-button" data-content="panel2">
            <p><span id="panel-icon">+</span>Test2</p>
            </div>  
            <div id="panel2" style="display: none">
            <p> Test jquery menu2 </p>
            </div>  

和下面的 jquery 代码:

$(".slide-button").on('click', function(){
    var panelId = $(this).attr('data-content');
    $('#'+panelId).toggle(500);
    });

切换本身完美运行。

但是,我还想包含一个加号和减号,您可以从我的 html 代码中的 span 标签中看到这一点。

我必须向我现有的 jquery 代码添加什么才能在用户单击链接时更改 + 和 - 符号?

感谢您的帮助:-)

最佳答案

如果你把它改成一个类

<div class="slide-button" data-content="panel1">
     <p><span class="panel-icon">+</span>Test1</p>
</div>  
<div id="panel1" style="display: none">
    <p> Test jquery menu1 </p>
</div>

你可以做

$(".slide-button").on('click', function(){
    var panelId = $(this).attr('data-content');
    $('#'+panelId).toggle(500);

    $(this).find('.panel-icon').text(function(_, txt) {
        return txt === "+" ? "-" : "+";
    });
});

FIDDLE

关于javascript - 包括加号+/减号到一个简单的切换菜单 jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30424561/

相关文章:

javascript - 计算每页记录数

html - 如何制作视频网格?

javascript - 如何在 JavaScript 中使用 x,y 坐标模拟点击?

jquery - 根据屏幕大小更改 CSS

javascript - 在带有闭包的循环中创建 gridster 的多个实例,以使用不同的参数调用相同的回调

javascript - 将单列转换为多列

html - CSS 定位框使用 ul li div

python - 如何在 JupyterLab 中保存笔记本的当前状态

javascript - 如何仅使用 JSDoc 为变量生成文档?

javascript - 单击复选框标签时丢失选择