点击切换图标方法,jquery bootstrap方法

我是真菜,用了半天,没有实现本身的效果,首先,我想的是利用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')});

 

 

今天总结经验,轮子是好的,关键是本身揣摩本身造轮子,不能单纯的用方法,这样起不到应用的效果,仍是得多思考,多想办法事件

相关文章
相关标签/搜索