我需要针对IE8优化我的网站。并且它不直接支持不透明度。可以使用-ms-filter属性进行设置。在我的javascript中使用jquery animate()更改不透明度。但我如何使用-ms-filter
目前正在给这个
$('.topbar img').animate({opacity:1, -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"},1500);
但它抛出了JS错误。显然无效的属性。任何人都可以帮我如何在IE8中动画..?帮助赞赏。
答案 0 :(得分:6)
尝试使用:
$('.topbar img').animate(
{
opacity:1,
'-ms-filter': 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)'
// ^quotes
}
,1500);
实际上,使用jquery,您不需要-ms-filter
属性。有关示例,请参阅this jsfiddle
答案 1 :(得分:0)
jQuery在动画的每一步都会触发step() callback。
$('.topbar img').animate({
opacity: 1
},
{
step: function(now, fx) {
// Every step of the opacity animation we'll get the current
// opacity as the 'now' argument.
var opacity = Math.round(now * 100);
$(fx.elem).css('-ms-filter', 'progid:DXImageTransform.Microsoft.Alpha(Opacity=' + opacity + ')');
}
});