如何在点击时切换字体真棒图标?

Ora*_*max 36 html javascript css jquery onclick

我在可扩展类别列表项上使用字体真棒'加'图标.当他们处于扩张状态时,我希望显示"减号"

HTML

<ul id="category-tabs">
    <li><a href="javascript:void"><i class="fa fa-fw">?</i>Category 1</a>
        <ul>
            <li><a href="javascript:void">item 1</a></li>
            <li><a href="javascript:void">item 2</a></li>
            <li><a href="javascript:void">item 3</a></li>
        </ul>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

jQuery的

$('#category-tabs li a').click(function(){
    $(this).next('ul').slideToggle('500');
});
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Aru*_*hny 75

您可以i在单击的锚点内切换元素的类,如

<i class="fa fa-plus-circle"></i>
Run Code Online (Sandbox Code Playgroud)

然后

$('#category-tabs li a').click(function(){
    $(this).next('ul').slideToggle('500');
    $(this).find('i').toggleClass('fa-plus-circle fa-minus-circle')
});
Run Code Online (Sandbox Code Playgroud)

演示:小提琴

  • 4年后仍然有用:-)只是要注意,如果你使用svg图形,'i'元素将被'svg'替换,所以toggleClass需要应用于$(this).find( 'svg')而不是'我' (3认同)

Jam*_*lly 15

只需toggleClass()i元素中包含的a元素上调用jQuery 即可切换加号和减号图标:

...click(function() {
    $(this).find('i').toggleClass('fa-minus-circle fa-plus-circle');
});
Run Code Online (Sandbox Code Playgroud)

请注意,这假定默认情况下会将一类fa-plus-circle添加到i元素中.

JSFiddle演示.