分页功能:如果用户单击数组中的任何元素,我想更改背景颜色。我可以使用下面的代码来实现此目的,但是当我单击此数组中的其他元素时,我希望先前单击的元素以及其余元素使用原始的pagins类。有人可以指出我的方向吗?

.pagins a {
 color: #fff;
 background-color:#009de0;
}

.testClass {
 background-color:#fff !important;
 color:#009de0 !important;
}


var elements = document.getElementsByClassName('pagins');
$.each(elements, function(){
    $(elements).click(function(){
        $(this).addClass('testClass');
    });
})

最佳答案

不要使用$.each(),这是在jQuery中循环的一种方式。您最终每次点击都会多次调用点击处理程序。

您正在使用jQuery,所以请不要使用document.getElementsByClassName('pagins')。只需使用$('.pagins')

听起来好像您只希望最近单击的.pagins元素具有testClass类。因此,在将类添加到clicked元素之前,请从所有.pagins.testClass元素中删除该类。

$('.pagins').click(function(){
    $('.pagins.testClass').removeClass('testClass');
    $(this).addClass('testClass');
});

10-05 20:20