Я пытаюсь динамически применять стили к тегам HTML, считывая значения определенных атрибутов HTML и применяя имя класса на основе их значений. Например, если у меня есть:
<p height = "30">
Я хочу применить к этому абзацу class = "h30", чтобы я мог стилизовать его в своей таблице стилей. Я не могу найти никакой информации о получении значения атрибута, отличного от id или class. Помощь?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Атрибуты - это просто свойства (обычно). Так что просто попробуйте:
for (e in ...) {
if (e.height == 30) {
e.className = "h30";
}
}
Или используйте что-то вроде jquery, чтобы упростить подобные вещи.
См .: getAttribute (). Параметр - это имя атрибута (без учета регистра). Возвращаемое значение - это значение атрибута (строка).
Обязательно посмотрите Замечания в MSDN, прежде чем работать с IE ...
Я настоятельно рекомендую использовать что-то вроде jquery, где добавление классов тривиально:
$("#someId").addClass("newClass");
так что в вашем случае:
$("p[height='30']").addClass("h30");
таким образом, выбираются все теги абзацев, у которых атрибут высоты равен 30, и к ним добавляется класс h30.
Лучше разделить макет и презентацию.
Несмотря на использование CSS, вы связываете эти два аспекта вместе. Используйте лучшие имена классов (почему у него должна быть высота 30 пикселей? Это строка меню? Нижний колонтитул? Баннер?)