jQuery 在点击时切换多个 类

jQuery toggle multiple classes on click

为什么我无法使用 onClick 事件切换多个 类,例如:

<a data-class="tiny"> Tiny</a> 
<a data-class="small"> Small</a> 
<a data-class="big"> Big</a> 
<a data-class="large"> Large</a>


<i class="icon twitter"></i>


  $(document).on('click', 'a[data-class]', function() {
      var aclass = $(this).data('class');
      $(.box).toggleClass(aclass);
  });

在每次点击时,我最终将所有 类 分配给 .icon twitter 元素,我希望发生的是附加一个被点击的 类 并删除其他的,但保留原来的.

您可以尝试添加额外的 类 和 id:

$(document).ready(function(){

  $(".linkClass").click(function(){
  var temp = $(this).id; // contains either tiny, small, big or large

  $(".icon").removeClass("tiny small big large"); // clear any classes added before
  $(".icon").addClass(temp); // adds the required class based on the id of the clicked element.
  });

});
<a class="linkClass" id="tiny"> Tiny</a> 
<a class="linkClass" id="small"> Small</a> 
<a class="linkClass" id="big"> Big</a> 
<a class="linkClass" id="large"> Large</a>


<i class="icon twitter"></i>