[英]Toggle CSS Class on Event with jQuery
我有一块HTML看起来像这样:
<div data-toggle="collapse" data-parent="#groupOptions" data-target="#group" aria-expanded="true" aria-controls="group" class="collapsable-group-header">
<h3><span class="glyphicon glyphicon-chevron-right toggle"></span> Group</h3>
</div>
该HTML使用的是Bootstrap的折叠控件 。 行为正常。 我现在正尝试将glyphicon从右更改为下。 为此,我有以下几点:
$('#group')
.on('show.bs.collapse', function () {
var $toggle= $('#group > .toggle');
$toggle.removeClass('glyphicon-chevron-right');
$toggle.addClass('glyphicon-chevron-down');
console.log($toggle.html());
})
.on('hide.bs.collapse', function() { alert('hiding...'); })
;
不幸的是,这是行不通的。 我的console.log语句正在打印undefined
。 但是,如果我执行console.log($toggle)
我会看到一个元素。 我想念什么?
谢谢!
更改
$('#group > .toggle');
至
$('[data-target=#group] .toggle');
我没有看到ID设置为group
任何内容。
另外, .toggle
不是父级的直接子级,因此请删除>
。
jQuery返回的结果是一个数组。 请改用$ toggle [0] .removeClass...。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.