Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.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_Internet Explorer_Cross Browser_Opacity - Fatal编程技术网

jquery动画不透明度不工作跨浏览器

jquery动画不透明度不工作跨浏览器,jquery,internet-explorer,cross-browser,opacity,Jquery,Internet Explorer,Cross Browser,Opacity,我知道有人问过这个问题,但答案总是animate()处理不透明度:0和过滤器:alpha(不透明度=0)之间的跨浏览器差异,但在本例中并非如此 我有这个div .entry { opacity:0.4; filter:alpha(opacity=0); } 和这个jquery <script> $(document).ready(function(){ setTimeout(function(){ $('.entry').animate({opacity:'1'},

我知道有人问过这个问题,但答案总是animate()处理不透明度:0和过滤器:alpha(不透明度=0)之间的跨浏览器差异,但在本例中并非如此

我有这个div

.entry
{
opacity:0.4;
filter:alpha(opacity=0);
}
和这个jquery

<script>
$(document).ready(function(){
    setTimeout(function(){
    $('.entry').animate({opacity:'1'},700);
    },1000);
});
</script>

$(文档).ready(函数(){
setTimeout(函数(){
$('.entry').animate({opacity:'1'},700);
},1000);
});
文本在浏览器中保持不可见的alpha(不透明度=0),即在chrome和firefox中工作 可以在查看

编辑
我尝试过引用和取消引用不透明度:“1”没有帮助

fadeIn()不是一个选项,因为我需要将div保持在相同的高度,并且我不能太多地更改CSS以保持相同的高度,因为它会弄乱我的手风琴菜单

谢谢,这就是x浏览器的工作原理

<script>
$(document).ready(function(){
    $('.entry').css({'opacity':0, 'filter':'alpha(opacity=0)'});
    setTimeout(function(){
    $('.entry').animate({opacity:'1'},700);
    },1000);
});
</script>

$(文档).ready(函数(){
$('.entry').css({'opacity':0,'filter':'alpha(opacity=0)});
setTimeout(函数(){
$('.entry').animate({opacity:'1'},700);
},1000);
});
不确定为什么必须在
“不透明度”:0、“过滤器”:“alpha(不透明度=0)”周围使用引号,但这是唯一有效的方法


此外,我还必须将它放在id元素上不同的jquery突出显示效果之后。当它被放在我的标题中该函数之前时,它使该函数无法工作。可能与css()函数有关?

不确定这是否适用于较旧的IE版本,但它适用于IE9上的IE7模式

过滤器:IE的alpha(不透明度=#)为0-100,所以将其设置为1可能只是将其设置为。。。1,当你想要100的时候


我刚刚试着制作了这个jsFiddle:,div文本淡入(不管怎样,在IE9上)。。。我刚刚在动画中添加了过滤器。我不确定这是否正是您想要的,尽管…

为了代码一致性和消除跨浏览器问题,还可以使用jQuery而不是CSS设置初始不透明度

<style>
    .entry {
    }
</style>

<script>
$(document).ready(function(){
    $('.entry').css({opacity: 0.4});
    setTimeout(function(){
    $('.entry').animate({opacity: 1},700);
    },1000);
});
</script>

.进入{
}
$(文档).ready(函数(){
$('.entry').css({opacity:0.4});
setTimeout(函数(){
$('.entry').animate({opacity:1},700);
},1000);
});

你能试试
$('.entry').fadeIn(700)?取消引用“1”。这可能是罪魁祸首。与其用CSS设置
.entry
的初始不透明度,不如让jQuery来处理这个问题。当你正确使用jQuery时,它在不透明度问题上做得非常好。我尝试过引用和取消引用不透明度:“1”对fadeIn()没有帮助。这不是一个选项,因为我需要保持div相同的高度,我不能改变CSS太多以保持相同的高度,因为它会弄乱我的手风琴菜单。我知道这不是你要求的(我讨厌人们提出问题范围之外的建议)但是……这是一个好的、带有不透明性的老PNG可以解决的问题吗?