Удалить некоторые классы из тега <style>в javascript - PullRequest
0 голосов
/ 17 апреля 2020

У меня есть текстовое поле, где есть некоторые html вроде:

<style>
        a,
        body {
            color: #000
        }

        .test-row-1,
...
</style>
<div class="page-container">
...
</div>

В javascript Мне нужно циклически перемещаться по всем элементам внутри тега "style", чтобы что-то делать. Наконец, мне нужно создать другой «стиль» только с некоторыми классами внутри исходного. В примере мне нужно удалить класс тела.

Возможно ли это?

спасибо

1 Ответ

0 голосов
/ 17 апреля 2020

Разделы внутри тега style недоступны, как обычные элементы в javascript. Однако вы можете получить доступ к отдельным элементам HTML и изменить их стили.

В своем примере вы сказали, что вам нужно «удалить класс тела», поэтому я предполагаю, что это означает, что вы больше не хотите body чтобы иметь цвет #000.

Чтобы сделать что-то подобное, вам нужно сначала получить ваш элемент в javascript и сохранить его в переменной. Есть несколько способов получить тело, вы можете использовать любой из этих методов:

var body = document.querySelector("body");
var body = document.getElementsByTagName("body")[0];

Теперь вы можете изменить свойства стиля элементов, используя формат element.style.property = value. Например, чтобы изменить цвет на красный, используйте этот скрипт:

body.style.color = 'red';

Вот фрагмент рабочего кода:

var body = document.querySelector("body");

body.style.color = 'red';
body, a {
  color: #000;
}
<body>
  Here is some text.
  <a>Here is a link.</a>
</body>

Обратите внимание, что ссылка остается черной, поскольку она по-прежнему определена таким образом в CSS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...