Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Изменить класс (https://javascript.ru/forum/events/26042-izmenit-klass.html)

Володя Шишкин 23.02.2012 16:22

Изменить класс
 
Здраствуйте, подскажите пожалуйста, как сделать скрипт, находящий все элементы с классом 'body' и заменяющего его на класс 'pBody'?

Володя Шишкин 23.02.2012 18:31

nasqad, ничего не происходит.

Nekromancer 23.02.2012 18:55

Это
Цитата:

Сообщение от nasqad
String(el.className);

и это
Цитата:

Сообщение от nasqad
el.setAttribute('class', className.replace('body', 'pBody'));

очень жёстко, не находите?

Володя Шишкин 23.02.2012 18:59

Nekromancer, если бы находил то не писал бы здесь. Просто только начинаю изучать.

Nekromancer 23.02.2012 19:36

Володя Шишкин,
Этот ответ явно был не вам.

Володя Шишкин 23.02.2012 19:50

Кстати, как-то на форуме очень много похожих вопросов, такое впечатление что не-кто не может найти ответ. А ведь очень нужно

рони 23.02.2012 19:53

Володя Шишкин,
var elements = getElementsByClass('body');
for (var i=0; i<elements.length; i++)  {
  elements[i].className = elements[i].className.replace('body', 'pBody')
}


функцию getElementsByClass можно взять здесь http://javascript.ru/unsorted/top-10...lementsbyclass

Володя Шишкин 23.02.2012 21:38

Всё равно ничего не происходит. Вот ссылка на полный код html-файла: http://innovativ.ru/w/index.php?titl...0%B0&oldid=115

Nekromancer 23.02.2012 21:56

window.onload сделайте что ле.

window.onload = function(){
var elements = getElementsByClass('body');
for (var i=0; i<elements.length; i++)  {
  elements[i].className = elements[i].className.replace('body', 'pBody')
}
}

рони 23.02.2012 22:01

Володя Шишкин,
скрипт надо применять к элементам когда они уже есть на странице

добавьте window.onload
window.onload = function() {


var elements = getElementsByClass('body');

 for (var i=0; i<elements.length; i++)  {

   elements[i].className = elements[i].className.replace('body', 'pBody')

 }
}


Часовой пояс GMT +3, время: 10:45.