Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как программно присвоить элементу стиль? (https://javascript.ru/forum/misc/2089-kak-programmno-prisvoit-ehlementu-stil.html)

vlad275 30.10.2008 15:10

Как программно присвоить элементу стиль?
 
Делаю так:
var st = document.styleSheets[0];
//получаем первую таблицу стилей?

var r = (st.rules)?st.rules[0]:st.cssRules["#selectedItem"];
//Если Internet Explorer то использовать первое правило st.rules[0] 

//alert(r.style.color);
//Вывод цвета

document.getElementById(id).style.color = r.style.color;



Но хочется не по одному атрибуту приравнивать, а сразу весь стиль.
Типа
document.getElementById(id).style = r.style;

Но так не работает. Как это сделать?

Snipe 30.10.2008 15:21

А нельзя сделать стили по классам и элементу присваивать класс?

vlad275 30.10.2008 15:25

Как это сделать?
Чем класс .selectedItem отличается от айдишника #selectedItem?

Kolyaj 30.10.2008 15:26

Тем, что элементу можно присвоить className, и стили сами применятся.

vlad275 30.10.2008 17:22

Как это программно реализовать?

ZoNT 30.10.2008 17:31

elem.className = 'selectedItem'; (равнозначно <... class="selectedItem">)
elem.id = 'selectedItem'; (равнозначно <... id="selectedItem">)

vlad275 30.10.2008 17:38

Спасибо!

vlad275 30.10.2008 17:50

Не работает :-(

<style>
				#selectedItem {color:#FF0000;}
</style>

function doit(id) {
					var obj = document.getElementById(id);
document.getElementById(id).id=#selectedItem;
				}


И так не работает:

function doit(id) {
					var obj = document.getElementById(id);
document.getElementById(id).id=selectedItem;
				}

Kolyaj 30.10.2008 17:55

vlad275,
кавычки забыли. И используйте className лучше для стилей.

vlad275 30.10.2008 18:11

Хорошо


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