0

我有一个带有 idopacity:0.75;的 div,它在屏幕上显示了 0.75 不透明度的 div。当我想用 js 更改不透明度时,它不起作用 - 我使用警报查看 style.opacity 值,但警报显示为空白。如果我改为style.opacity = "0.75";在 js 代码中使用 ... 它确实可以工作(在屏幕上,对象看起来像它应该的那样不透明 75%,并且警报出现 0.75)。为什么是这样?

label.style.opacity = parseFloat(label.style.opacity, 10) - 0.1; alert(label.style.opacity);

和CSS

#label {
width:100px;
text-align:center;
height:50px;
font-size:normal;
position:absolute;
color:white;
z-index:100;
font-family:Helvetica-Light;
}
4

2 回答 2

0

您需要调用getComputedStyle元素以获取 CSS 设置的值。请参阅此答案:如何使用 Javascript 获取元素的不透明度?

于 2013-06-30T01:28:40.583 回答
0

尝试这个:

label.style.opacity = (parseFloat(label.style.opacity) || 1) - 0.1;

如果元素没有为opacity属性设置值,.style.opacity将返回一个空字符串。我的代码默认值为1.

于 2013-06-30T01:28:52.687 回答