присвойте тегу стиля идентификатор, например <style id="ssID">
если кто-то делает ваши стили для вас
скажите ЭТОМУ человеку, чтобы он присвоил тегу стиля идентификатор -
таким образом, вы можете получить к нему доступ напрямую без
карабкаясь, гадая, что это за индекс
// create a hash table
var cssHash = {};
// loop through and populate the hash table
for (let i in (r = ss0.sheet.rules)) {
// selectorText is the name of the rule - set the value equal to the rule
cssHash[r[i].selectorText] = r[i];
}
теперь у вас есть хеш-таблица для всего в таблице стилей -
обратите внимание, что некоторые значения будут undefined , но не для
любые вещи, которые вас волнуют
если у вас есть, например, класс с именем # menuItem
и вы хотите изменить его цвет на черный, сделайте это
cssHash['#menuItem'].style.color = #000;
эта строка задает цвет стиля правила
чей индекс был найден в хеш-таблице (cssHash)
по имени '# menuItem'
что более важно, у вас, вероятно, есть несколько разных
классы, которые вы хотите изменить все сразу
вроде как когда ты сменила специальность в колледже
скажем, у вас есть четыре разных класса
и вы хотите установить все их цвета фона
к тому же значению, что какой-то пользователь выбрал из входа
тег выбора цвета <input id="bColor" type="color">
и правила класса, которые вы хотите изменить, называются
# menuItem .homeAddr span и # вакуум: hover
// create a listener for that color selector
bColor.addEventListener('input', function (e) {
// loop through a split list of the four class names
'#menuItem .homeAddr span #vacuum:hover'.split(' ').forEach(function (obj) {
// use the hash table to look up the index of each name
// and set the background color equal to the color input's value
cssHash[obj].style.backgroundColor = bColor.value;
});
}, false); // false added here for the sake of non-brevity