Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 设置不透明度动画无法正常工作_Jquery_Fade - Fatal编程技术网

Jquery 设置不透明度动画无法正常工作

Jquery 设置不透明度动画无法正常工作,jquery,fade,Jquery,Fade,我正试图用下面的代码为一个元素的不透明度设置动画 window.setInterval(function(){ var target = $('.before'), opacity = target.css('opacity'); target.fadeTo(600, (opacity==1?0:1)) }, 5000); 当不透明度从1设置动画到0时,效果很好,但当从0设置动画到1时,它根本不会设置动画,只是会立即从0更改为1 我尝试过使用fadeTo()a

我正试图用下面的代码为一个元素的不透明度设置动画

window.setInterval(function(){
    var target = $('.before'),
    opacity = target.css('opacity');

    target.fadeTo(600, (opacity==1?0:1))
    }, 5000);
当不透明度从1设置动画到0时,效果很好,但当从0设置动画到1时,它根本不会设置动画,只是会立即从0更改为1

我尝试过使用fadeTo()animate()toggle()的各种方法,但都没有用

使用fadeToggle()按预期工作,但实际上不是一个选项,因为它会在动画完成后向元素添加显示:无,这会扰乱页面的布局

编辑

已解决:


我正在使用的网站使用的是jQuery 1.4.4,更新为1.10.1修复了此问题。

尝试使用
window.setInterval(function(){
$('.before').animate($('.before').css('opacity',1-0:1),1000);

}, 5000);

您打算支持哪些浏览器?使用css可以很容易地做到这一点——只需使用jQuery添加/删除一个类,然后使用css转换来处理不透明度渐变。不透明度开/关在lte IE8中仍然有效,但不会褪色


或者,您可以使用fadeToggle并添加“display:block!”!重要的;'(或您需要的任何显示)添加到元素。

将.val()添加到结尾似乎会阻止动画完全工作。嗯。。。这可能是浏览器的问题吗?在Chrome中尝试了您的代码,它工作正常: