JavaScript中HTML文本的淡入淡出
我一直在尝试让一些文本从不透明度0淡入到100,但我似乎无法让它正常工作。原始淡出版本的贷记给此人 这是密码JavaScript中HTML文本的淡入淡出,javascript,Javascript,我一直在尝试让一些文本从不透明度0淡入到100,但我似乎无法让它正常工作。原始淡出版本的贷记给此人 这是密码 fadeIn = function(id, speed) { var s = document.getElementById(id).style; s.opacity = 0; (function fade() {(s.opacity+= .1)<100?s.display="inline":setTimeout(fade,speed)})(); } fa
fadeIn = function(id, speed) {
var s = document.getElementById(id).style;
s.opacity = 0;
(function fade() {(s.opacity+= .1)<100?s.display="inline":setTimeout(fade,speed)})();
}
fadeIn=功能(id、速度){
var s=document.getElementById(id).style;
s、 不透明度=0;
(function fade(){(s.opacity+=.1)我认为有两个问题,1不透明度值在0…1
not0..100
之间变化,而且当不透明度为1时,需要停止循环
其次,s.opacity
返回一个字符串,因此由于您使用的是+
运算符,因此需要将值转换为字符串,否则将执行字符串连接
fadeIn=功能(id、速度){
var s=document.getElementById(id).style;
s、 不透明度=0;
(函数fade(){
(s.opacity=+s.opacity+.1)>=1?s.display=“inline”:设置超时(淡入度、速度)
})();
}
fadeIn('s',500)
asdfsadf
您所要做的就是设置一个间隔,然后以您的速度/100为增量数到100
功能fadeIn(id、速度){
变量最大值=100,计数=0;
var增量=速度/最大值;
var obj=document.getElementById(id);
var interval=setInterval(函数(){
obj.style.opacity=(计数/最大值);
如果(计数=最大值){
间隔时间;
}
计数++;
},增量);
}
#褪色{
不透明度:0;
}
让我淡入
淡入
是否允许在任务中使用jQuery
或其他方法?我有点想避免使用外部库,但我知道这会让这变得更容易。我想要一个香草JavaScript解决方案。是的。它应该是$('#“+id)。淡出(2000)
其中2000是2秒:)以防万一你会使用它。将来我在更多地使用JQuery时一定会使用它。谢谢:)非常有魅力!非常感谢!