Javascript 如何在JS中选择具有类的所有元素

Javascript 如何在JS中选择具有类的所有元素,javascript,html,Javascript,Html,我想用JS修改所有类。 是否有方法选择它们而无需手动设置数组索引(例如[0]或[1]或[184]) 示例代码: 某物: 某物 const元素=document.querySelectorAll(“.message”); 元素。类列表。添加(“颜色”); 它仅在我添加[0]时有效,并且仅适用于具有该类的第一个元素。 但是我想修改类中的所有元素。首先了解基本语言语法的作用很重要。[0]正在选择数组(或类似数组的对象)的0索引。因此,要对它们进行操作,可以使用一个循环,循环中的变量从0开始递增,直

我想用JS修改所有类。 是否有方法选择它们而无需手动设置数组索引(例如[0]或[1]或[184])

示例代码:

某物:
某物
const元素=document.querySelectorAll(“.message”);
元素。类列表。添加(“颜色”);
它仅在我添加
[0]
时有效,并且仅适用于具有该类的第一个元素。
但是我想修改类中的所有元素。

首先了解基本语言语法的作用很重要。
[0]
正在选择数组(或类似数组的对象)的
0
索引。因此,要对它们进行操作,可以使用一个循环,循环中的变量从
0
开始递增,直到超出数组的边界为止

function replaceEmotes() {
    var messages = document.querySelectorAll(".message");
    for (var i = 0; i < messages.length; i++) {
        var str = messages[i].innerHTML.replace(":smile:", "<i class='em em-smile'></i>");
        messages[i].innerHTML = str;
    }
}
函数replaceMotes(){
var messages=document.querySelectorAll(“.message”);
对于(var i=0;i

还有其他方法,但这是一种基本语法,可能应该首先学习。

您可以使用
document.getElementsByClassName(“message”)
循环遍历节点列表中的所有元素。

使用forEach迭代所有消息节点并替换表情。还要注意,我使用一个全局regexp来替换消息中的所有
:smile:
字符串,而不仅仅是第一个字符串

function replaceEmotes() {
    var messages = document.querySelectorAll(".message");

    messages.forEach(message => {
       message.innerHTML = message.innerHTML.replace(/:smile:/g, "<i class='em em-smile'></i>");
    });
}
函数replaceMotes(){
var messages=document.querySelectorAll(“.message”);
messages.forEach(message=>{
message.innerHTML=message.innerHTML.replace(/:smile:/g,“”);
});
}

document.queryselectoral()
选择给定类名的所有元素,并将它们存储在类似数组的对象中。可以在对象之间循环,而不是手动访问它们

var elements = document.querySelectorAll('.className');
for(var i = 0; i < elements.length; i++){
    var str = elements[i].innerHTML;
    elements[i].innerHTML = str.replace(":smile:", "<i class='em em-smile'></i>");
}

您需要循环所有元素并使用[0]来更改每个元素的内部html,而不是使用[0]。请参阅本文:@Oliver:我添加了代码,但再次强调,您应该自己学习这些基本的东西。谢谢!!:)对不起,我是javaScript新手,我是PHP开发人员,只学习JS。谢谢
var elements = document.getElementsByClassName('.className');
for(var i = 0; i < elements.length; i++){
    // Same like above...
}