Добавить класс элементам
Нужно реализовать добавление класса всем элементам с классом .hreview, если в url страницы есть определенные цифры
var url = window.location.pathname;
function give_me_badcom(){
if (url.replace(/[^0-9]/gim,'') == 10950)
{
var elem = document.querySelectorAll("div.hreview");
for (var i = 0; i < elem.length; i++) {
elem[i].style.opacity = "0.5";
}
}
}
Получилось добавить стиль, а при добавлении класса проблемы... Функция вызывается в <body onload="give_me_badcom()"> Спасибо:help: |
MouseOver,
так?
var url = window.location.pathname;
function give_me_badcom(){
if (url.replace(/[^0-9]/gim,'') == 10950)
{
var elem = document.querySelectorAll("div.hreview");
for (var i = 0; i < elem.length; i++) {
elem[i].style.opacity = "0.5";
elem[i].classList.add('newClass')
}
}
}
|
Пытался делать так же - не работает.
|
MouseOver,
а html можете приложить? |
|
MouseOver,
так Вам надо чтобы какое название класса добавлялось? |
Нужно чтобы к <div class="hreview"> добавилось <div class="hreview newClass"> стили работают а классы нет...
|
MouseOver,
дело в том для того чтобы добавить в div c классом hreview , он должен существовать на момент добавления в него нового класса , а он не существует :) |
Но я же вызываю функцию после загрузки страницы :blink: <body onload="give_me_badcom()">
|
MouseOver,
а Вы посмотрите через F12 , есть ли у Вас хоть что то с классом hreview. В эту строку получаете пустой массив Цитата:
|
Mess4me,
хотя сейчас проверил и уже работает , у Вас к дивам всё нормально подобавлялось ! |
Что то не заметил чтобы работало... в div только один класс hreview
Не понимаю почему стили добавляются а класс нет. Так же пробовал через document.getElementsByClassName - ничего |
MouseOver,
может проблема в стилях? Потому что с дивами всё ОК) |
Добавил id="check" к <div class="hreview">
Изменил код.
var url = window.location.pathname;
function give_me_badcom(){
if (url.replace(/[^0-9]/gim,'') == 10950)
{
var elem = document.querySelector("#check");
elem.classList.add("goal");
}
}
Работает только с первым div'ом, на странице их больше 20, как для всех сработать? |
MouseOver,
так ID может быть только один - нельзя так ) |
Все заработало...я тупанул, Mess4me спасибо большое!
|
MouseOver,
:dance: |
| Часовой пояс GMT +3, время: 00:53. |