我的div上有一个计时器,可更改div的不透明度。但是由于某种原因,数学会不断将其设置为0.1。而且我不知道为什么!
这是我的代码:
function do_it(div){
var opac = parseInt(div.style.opacity);
if(opac == 1){
var dir = 'down';
} else if(opac == 0) {
var dir = 'up';
}
if(dir == 'down'){
opac -= 0.1;
} else {
opac += 0.1;
}
if(opac > 1){
opac = 1;
} else if(opac < 0){
opac = 0;
}
div.style.opacity = opac;
div.timer = setTimeout(function(){ do_it(div) }, 1000);
}
提供了一个小提琴:
JSFiddle
div的不透明度应该从1变为0,然后以
0.1
的顺序再次备份 最佳答案
这是你的问题
var opac = parseInt(div.style.opacity);
应该是parseFloat
var opac = parseFloat(div.style.opacity);
关于javascript - div不透明度不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17758988/