jsDOM 无法通过 class 或标签更改背景颜色

jsDOM cannot change background color by class or tag

我正在尝试使用 tamper monkey 更改另一个网站上某个元素的背景颜色。但是每次我尝试它都会发送错误:无法更改未定义的背景颜色。

我尝试过使用 getElementsByTagName 和 getElementsByClassName,之后我使用样式 属性,当然还有 backgroundColor。

(function() {
    'use strict';

    var x = document.getElementsByClassName("rdw");
    x.style.backgroundColor = "red";

})();

我想使用 getElementsByClassId,因为我觉得在这种情况下它更精确。

如前所述,我收到错误无法更改未定义的背景颜色。

感谢您的帮助:)

getElementsByClassName 的 return 值为

An HTMLCollection providing a live-updating list of every element which is a member of every class in names.

所以,如果你只有一个元素 class,你应该选择第一个:

x[0].style.backgroundColor = "red";

否则你将不得不遍历元素:

[...x].forEach(el => el.style.backgroundColor = "red");