Получение всех стилей у эелемента
Подскажите пож-та как можно узнать все стили любого элемента ? Какие стили буду запрашивать заранее не известно, поэтому нужно получить все стили элемента и потом уже отсеивать не нужные.
|
|
bes, спасибо!
А не подскажите как можно вывести всё что получил с помощью getComputedStyle в виде объекта:
{
"color" : "#fff",
"font-size" : "15px"
}
Что бы стили брал так же :hover элемента. Пробовал сделать такое:
var el = document.getElementById('asd');
var cs= document.defaultView.getComputedStyle(element,'hover');
for(var i in cs){
document.write(i + " : " + cs[i] + "<br>")
}
Почему то не выводит значения свойства, а лишь названия и порядковые номера. Так же, если к примеру, указать вывести цвет текста, то он почему-то выводит значение которое было задано в классе без псевдокласса, а значения с псевдокласса не выводит |
Вывести можно так, с псевдо-cелекторами надо разбираться
<style>
div {
background-color: lightgreen;
}
</style>
<div></div>
<script>
window.onload = function () {
var div = document.body.children[0];
var cs = getComputedStyle(div);
var len = cs.length;
for (var i = 0; i < len; i++) {
div.innerHTML += cs[i] + ': ' + cs[cs[i]] + ';<br><hr><br>';
}
}
</script>
|
bio,
<style>div:hover { color:red; }</style>
<div id="a">LOL</div>
<script>
var el = document.getElementById('a');
var style = window.getComputedStyle(el, 'hover');
var property;
for (var i = 0, b = style.length; i < b; i += 1) {
property = style[i];
document.write(property + " : " + style.getPropertyValue(property) + ";<br>");
}
</script>
|
melky, эквиваленты ли эти два способа? Вроде да.
PS: https://developer.mozilla.org/en-US/...yleDeclaration |
Цитата:
<html>
<head><title></title></head>
<body style="background-color: red;">...
<script>
alert(
document.body.style["background-color"] +
"\n" +
document.body.style.getPropertyValue("background-color")
);
</script>
</body>
</html>
в хроме различий нет, в FF и О есть (первое - undefined, Ваш К.О.) Цитата:
|
Цитата:
|
Цитата:
Я заметил это, когда писал функцию css для анимации (на форуме тут самая первая версия лежит). |
Цитата:
|
| Часовой пояс GMT +3, время: 03:45. |