javascript - 通过 JavaScript 切换按钮上的图标

标签 javascript html twitter-bootstrap

我设置了一个 Bootstrap 网页,它显示一个可折叠表格。每个表格行都有一个带有 glyphicon-chevron-down 图标的按钮。当用户单击此按钮时,该图标需要更改为glyphicon chevron-up。我尝试了几种不同的方法,但没有成功。

当前设置是:

<script >
    function toggleChevron(button) {
        if (button.find('span').hasClass('glyphicon-chevron-down')) {
            button.find('span').className = "glyphicon glyphicon-chevron-up";
        }
        if (button.find('span').hasClass('glyphicon-chevron-up')) {
            button.find('span').className = "glyphicon glyphicon-chevron-down";
        }
    }
</script>

<button type="button" onclick="toggleChevron(this)" class="btn btn-default">
    <span class="glyphicon glyphicon-chevron-down"></span>
</button>

JSFiddle

最佳答案

这有效:

toggleChevron = function(button) {
  $(button).find('span').toggleClass('glyphicon-chevron-down glyphicon-chevron-up');
}

主要问题是您传递的 this 不是 jQuery 对象,因此您需要将 button 包装在 jQuery 函数 $(按钮)

http://jsfiddle.net/V9LSS/4/

关于javascript - 通过 JavaScript 切换按钮上的图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24193845/

相关文章:

javascript - 用类声明一个变量

javascript - 即使页面发生变化,在点击时也显示 AJAX 请求?

html - 如何排除 wp_nav_menu( array(?

jquery - 使用 Font-Awesome - 在 Chrome 中,通过 <i class ="icon-ok"></i> 标记显示的图标不显示任何样式,也不会触发任何事件

jquery - 如何将链接放置在 Bootstrap 图标附近?

javascript - Websocket 跨页面 JavaScript

javascript - 使用 javascript 根据 URL 添加不同的文本

javascript - 将动态属性添加到对象末尾

css - 响应式布局管理百分比

html - 制作最小列的多列大小