如何使用javascript更改HTML文档中类名的值

How to change the value of the class name in HTML document with javascript

本文关键字:文档 何使用 javascript 更改 HTML      更新时间:2023-09-26

我有几个div只有一个类名,我的目标是在单击特定链接时更改div的类名值,下面是我的方法。

我将类名值存储在数组中,然后使用document.getElementsByClassName("test")并将其存储到数组元素中,然后运行for循环来替换类名值

function changeClass(value){
    style = [ 'view view-first', 'view view-second', 'view     view-third', 'view view-fourth', 'view view-fifth' ];
    var elements = document.getElementsByClassName("test");
    for(var i = elements.length - 1; i >= 0; i++)
    {
        elements[i].className = style[value];
    }   
}

当我运行这段代码时,只替换了一个div类名。我希望所有的类名都被替换掉。

试试这个:

function changeClass(value){
    style = [ 'view view-first', 'view view-second', 'view     view-third', 'view view-fourth', 'view view-fifth' ];
    var elements = document.getElementsByClassName("test");
    for(var i = elements.length - 1; i >= 0; i--)
    {
        elements[i].className = style[value];
    }   
}

function changeClass(value){
    style = [ 'view view-first', 'view view-second', 'view     view-third', 'view view-fourth', 'view view-fifth' ];
    var elements = document.getElementsByClassName("test");
    for(var i=0; i<elements.length;i++)
    {
        elements[i].className = style[value];
    }   
}
var elems = $('.oldclasses');
elems.removeClass('oldclasses');
elems.addClass('newClass');

因此,您不需要$.该jquery的每个函数都可以将命令应用于所有elem或单个elem。

尝试:

style = [ 'view view-first', 'view view-second', 'view     view-third', 'view view-fourth', 'view view-fifth' ];
$('.test').each(function(i,v) {
     if (style[i]) {
        $(this).attr('class',style[i]);
     }
});