div上的不透明度使用未定义的css,但是定义了js

时间:2013-06-30 01:10:23

标签: javascript css opacity

我有一个id为opacity:0.75;的div,这会在屏幕上显示0.75不透明度的div。当我想用js改变不透明度它不起作用 - 我使用警报来查看style.opacity值,但警报出现空白。如果我在js代码中有... style.opacity = "0.75";它确实有效(在屏幕上,对象看起来像它应该看起来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;
}

2 个答案:

答案 0 :(得分:0)

您需要在元素上调用getComputedStyle以获取CSS设置的值。请参阅此答案:How do I get the opacity of an element using Javascript?

答案 1 :(得分:0)

试试这个:

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

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