Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   правит css js (https://javascript.ru/forum/misc/21905-pravit-css-js.html)

systemiv 28.09.2011 23:49

правит css js
 
Как можно добавлять и удалять стили через чистый js?

Scrum 28.09.2011 23:50

setAttribute()
removeAttribute()
и для получения getAttribute()

Триви 28.09.2011 23:52

Через объект Style

systemiv 28.09.2011 23:57

Цитата:

Сообщение от Триви (Сообщение 128532)
Через объект Style

Помогло)

Триви 29.09.2011 00:00

Цитата:

Сообщение от Scrum (Сообщение 128530)
setAttribute()
removeAttribute()
и для получения getAttribute()

Вы уверены?

<div id="some_div" style="width:100px; height:50px; border: 1px solid #aaa"></div>

<script type='text/javascript'>
  var div = document.getElementById('some_div');
  alert(div.getAttribute('width'));
</script>

Scrum 29.09.2011 00:47

Цитата:

Сообщение от Триви (Сообщение 128534)
Вы уверены?

Абсолютно , для получения значения атрибута.
Клац.

<div id="some_div" style="width:100px; height:50px; border: 1px solid #aaa"></div>

<script type='text/javascript'>
  var div = document.getElementById('some_div');
  alert(div.getAttribute('style'));
</script>


Хотелось бы поинтересоваться, как для вашего варианта сделать remove кроме переназначения ?

Sweet 29.09.2011 01:36

Scrum, через свойство .style намного правильнее. Как ты, например, уберешь один из стилей?
<div id="some_div" style="width:100px; height:50px; border: 1px solid #aaa">&nbsp;</div>
<script>
var div = document.getElementById( 'some_div' );
div.style.border = "";
alert( div.style.cssText );
</script>
А убрать все стили из атрибута:
.style.cssText = "";

Scrum 29.09.2011 01:51

Цитата:

Сообщение от Sweet (Сообщение 128543)
Scrum, через свойство .style намного правильнее.

Так я вроде и не отрицаю, правильнее однозначно, вот только ТС хотел и удалять вот я и подумал.

Цитата:

Сообщение от Sweet (Сообщение 128543)
Как ты, например, уберешь один из стилей?

getAttribute, split, join, setAttribute

Цитата:

Сообщение от Sweet (Сообщение 128543)
А убрать все стили из атрибута:
.style.cssText = "";

Вот про это не знал, наверно поэтому в ту степь и подумал. Спасибо.

FINoM 29.09.2011 02:49

new_rule = document.styleSheets[0].addRule("DIV B", "color:blue");

x-yuri 29.09.2011 03:06

не правильнее, а проще, нечего себе лишние проблемы создавать ;)


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