我已经将所有类存储了一个数组。而且我还添加了一个属性元素,该元素还包含一个数组。我想将属性值添加为触发元素上的类。如何实现这种逻辑?

var $coverPosition = ['left', 'right', 'top', 'bottom', 'centerxy']
$('.posRow').on('click', function(){
  $('.coverBg').removeClass($coverPosition).addClass($(this).data('class'));
});

我的html结构是
<div class="coverBg left">
</div>
<a href="#" class="posRow" data-class="top">
</a>

有时CoverBg元素类可能是“左右”

最佳答案

如果要对数组中的所有类都这样做,请使用这种方式:

var $coverPosition = ['left', 'right', 'top', 'bottom', 'centerxy']
$('.posRow').on('click', function(){
  $('.coverBg').removeClass($coverPosition.join(" ")).addClass($(this).data('class'));
});

09-25 17:32