jquery渐进淡入

jquery渐进淡入,jquery,Jquery,当用户单击某个控件时,我正在更改div的值,我写下以下内容: $('#MyDiv').html(TheText); $('#MyDiv').hide().fadeIn(1000); 问题是,如果用户反复单击触发此代码的控件,MyDiv最终会消失。我尝试添加.stop(),如下所示: $('#MyDiv').stop().hide().fadeIn(1000); 但总的来说,MyDiv仍然消失了 我需要改变什么 谢谢。这是fadeIn()和stop()组合的问题。解决方案是使用并设置1值的op

当用户单击某个控件时,我正在更改div的值,我写下以下内容:

$('#MyDiv').html(TheText);
$('#MyDiv').hide().fadeIn(1000);
问题是,如果用户反复单击触发此代码的控件,MyDiv最终会消失。我尝试添加.stop(),如下所示:

$('#MyDiv').stop().hide().fadeIn(1000);
但总的来说,MyDiv仍然消失了

我需要改变什么


谢谢。

这是
fadeIn()
stop()
组合的问题。解决方案是使用并设置
1
值的
opacity
属性


实例:

这是一个结合了
fadeIn()
stop()
的问题。解决方案是使用并设置
1
值的
opacity
属性


实例:

问题在于,
fadeIn
通过将元素的不透明度从0设置为上一个不透明度来淡入元素,因此如果您通常隐藏元素(默认不透明度1),
fadeIn
将从0淡入到1

但是,如果之前正在运行动画,例如将元素的不透明度设置为0.005,并且您
stop().hide().fadeIn()
,则该元素在进入动画时具有
opacity:0.005
,并且
fadeIn
仅将其不透明度从
0
设置为
0.005
,让它看起来看不见

相反,您可以:

$('#MyDiv').stop().css({display: 'none', opacity: 1}).fadeIn(1000);
这不仅隐藏了元素,而且在淡入之前将其不透明度重置回1


请参见

问题在于,
fadeIn
通过将元素的不透明度从0设置为上一个不透明度来淡入元素,因此如果您通常隐藏元素(默认不透明度1),
fadeIn
将从0淡入到1

但是,如果之前正在运行动画,例如将元素的不透明度设置为0.005,并且您
stop().hide().fadeIn()
,则该元素在进入动画时具有
opacity:0.005
,并且
fadeIn
仅将其不透明度从
0
设置为
0.005
,让它看起来看不见

相反,您可以:

$('#MyDiv').stop().css({display: 'none', opacity: 1}).fadeIn(1000);
这不仅隐藏了元素,而且在淡入之前将其不透明度重置回1


请参见

只是一个想法:为什么不隐藏或禁用导致div更改文本的按钮,然后在执行上述代码段后再次启用或显示该按钮…只是一个想法:为什么不隐藏或禁用导致div更改文本的按钮,然后在执行上述代码段后再次启用或显示该按钮…+1为了解释这个问题。我在寻找确切的问题,所以谢谢你+1用于解释te问题。我在寻找确切的问题,所以谢谢你!