我是真菜,用了半天,沒有實現自己的效果,首先,我想的是利用attr的方法找到button的時候,觸發span的改變,把class的屬性里的圖標進行改變,可以實現這個功能,但是出現了一個bug,我是取的所有的button ,還有所有的span ,換句話說,我是將所有的圖標都進行切換了,而且不能夠切換回來,方法不太好,因為我是直接調取的class方法,沒有用到ID,由於ID才是唯一的,所以我這個方法不靠譜,只能以后再說
$(document).ready(function(){ $("button").click(function(){ $("span").attr('class', 'glyphicon glyphicon-minus pull-left'); }); });
后來想能夠切換的方法
$(document).ready(function(){ $("#one1").click(function(){ $("#one").toggleClass("glyphicon glyphicon-minus"); }); });
利用toggleClass可以反復調用的方式,開始實現這個功能,但是發現有兩個不足之處,第一,他需要button和span 兩個id,需要調用太多,而且要反復寫四遍,我覺得高手應該不會這么寫,我雖然還是菜鳥,但是也不想用傻辦法。
然后我咨詢了別人,好像可以用別的方法實現
$(document).ready(function(){ $('.accordion-group').find('span').click(function(){$(this).toggleClass('glyphicon-plus-sign glyphicon-minus')}); });
但是只能點圖標,不能點按鈕,因為click事件只綁定在span里,所以只執行span ,沒有到dom,button那一級,所以有問題,后來在修改
$('.accordion-heading').click(function(){$(this).find('span').toggleClass('glyphicon-plus-sign glyphicon-minus')});
今天總結經驗,輪子是好的,關鍵是自己揣摩自己造輪子,不能單純的用方法,這樣起不到應用的效果,還是得多思考,多想辦法