Javascript不透明度调用函数

Javascript不透明度调用函数,javascript,opacity,fadeout,Javascript,Opacity,Fadeout,我不能让不透明度精确到0,我只是让它精确到0.100000004,有人知道我为什么不让它精确到0吗?试试foo.style.opacity=Math.max(foo.style.opacity-0.1,0)这就是浮点数的行为方式。。为什么不丢失“else if”并替换为“else”。另外,我建议只复制fadeOut()函数的jQuery源代码。不需要重新发明轮子。 var faderout = function(){ if(foo.style.opacity>0){

我不能让不透明度精确到0,我只是让它精确到0.100000004,有人知道我为什么不让它精确到0吗?

试试foo.style.opacity=Math.max(foo.style.opacity-0.1,0)

这就是浮点数的行为方式。。为什么不丢失“else if”并替换为“else”。另外,我建议只复制fadeOut()函数的jQuery源代码。不需要重新发明轮子。
    var faderout = function(){
    if(foo.style.opacity>0){
    foo.style.opacity -= 0.1;
    var t = setTimeout(faderout,100);
    }
    else if(foo.style.opacity == 0){
    o = true;
    clearTimeout(t);
}