我是真菜,用了半天,没有实现本身的效果,首先,我想的是利用attr的方法找到button的时候,触发span的改变,把class的属性里的图标进行改变,能够实现这个功能,可是出现了一个bug,我是取的全部的button ,还有全部的span ,换句话说,我是将全部的图标都进行切换了,并且不可以切换回来,方法不太好,由于我是直接调取的class方法,没有用到ID,因为ID才是惟一的,因此我这个方法不靠谱,只能之后再说dom
$(document).ready(function(){ $("button").click(function(){ $("span").attr('class', 'glyphicon glyphicon-minus pull-left'); }); });
后来想可以切换的方法this
$(document).ready(function(){ $("#one1").click(function(){ $("#one").toggleClass("glyphicon glyphicon-minus"); }); });
利用toggleClass能够反复调用的方式,开始实现这个功能,可是发现有两个不足之处,第一,他须要button和span 两个id,须要调用太多,并且要反复写四遍,我以为高手应该不会这么写,我虽然仍是菜鸟,可是也不想用傻办法。spa
而后我咨询了别人,好像能够用别的方法实现code
$(document).ready(function(){ $('.accordion-group').find('span').click(function(){$(this).toggleClass('glyphicon-plus-sign glyphicon-minus')}); });
可是只能点图标,不能点按钮,由于click事件只绑定在span里,因此只执行span ,没有到dom,button那一级,因此有问题,后来在修改blog
$('.accordion-heading').click(function(){$(this).find('span').toggleClass('glyphicon-plus-sign glyphicon-minus')});
今天总结经验,轮子是好的,关键是本身揣摩本身造轮子,不能单纯的用方法,这样起不到应用的效果,仍是得多思考,多想办法事件