gpt4 book ai didi

javascript - 简单的淡入淡出不起作用

转载 作者:太空宇宙 更新时间:2023-11-03 21:58:06 25 4
gpt4 key购买 nike

我用 CSS 制作了一个简单的盒子,我试图通过使用 setInterval 对象动态改变它的不透明度来淡化它。

http://jsfiddle.net/5gqRR/7/

CSS

#box {
margin:0px auto;
margin-top:10px;
height:50px;
width:50px;
background:black;
}

JavaScript

var fade;
function select(id) {
return document.getElementById(id);
}
function disBox() {
fade=setInterval(function(){
select("box").style.opacity-=0.1;
},300);
if (select("box").style.opacity==0) {
clearInterval("fade");
select("box").style.display="none";
}
else {
select("box").style.display="block";
}
}

问题是“-=”运算符开始从 0 而不是 1 中减去不透明度。有人可以解释为什么会这样吗?

最佳答案

您对不透明度的检查应该在循环内。

function select(id) {
return document.getElementById(id);
}


// Run at loading
window.onload = function () {
// Preload variables
var box = select('box'), opacity = 1, fade;

// Looping
fade = setInterval(function(){
// Calculate and applying opacity
opacity = Math.max( 0, opacity - 0.1 );
box.style.opacity = opacity;

// Stoping loop when box isn't visible
if ( !opacity )
clearInterval(fade);
},30);
};

演示:http://jsfiddle.net/5gqRR/8/

关于javascript - 简单的淡入淡出不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12412397/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com