Мне нужно было получить цвет фона элемента, который ранее был определен таблицей стилей, чтобы определить стиль для нового элемента, который будет динамически создаваться с помощью javascript.Как получить цвет фона элемента в javascript?
Я пробовал использовать свойство backgroundColor, но возвращаемое значение было пустым. Значение сначала нужно задать с помощью js, тогда его можно получить с помощью свойства (не в шестнадцатеричном). Есть ли другая альтернатива этому без изменения элемента? Как использовать offsetWidth?
CSS:
#mybox {
width: 100px;
height: 100px;
margin: auto;
background-color: #eb5;
}
#buttons {
text-align: center;
}
HTML:
<div id="mybox"></div> <div id="buttons">
<input type="button" value="set" onclick="setColor('#ddd')" />
<input type="button" value="get" onclick="getColor()" />
</div>
JS:
function getColor(color){
var box = document.getElementById("mybox");
alert(box.style.backgroundColor);
}
function setColor(color){
var box = document.getElementById("mybox");
box.style.backgroundColor = color;
}
JSFiddle: http://jsfiddle.net/mevmike/FjkYA/
Почему это плохая идея ? –
Не видел обновленный комментарий, ладно! В любом случае, отредактировано –
Этот фрагмент кода напоминает prototype.js ... почему это плохая идея? возможно, defaultView не поддерживается до IE9 .. https://developer.mozilla.org/en-US/docs/Web/API/document.defaultView –