使用jQuery的Opacity IE 8 Fallback

时间:2013-05-13 09:20:12

标签: jquery css internet-explorer opacity

我已经完成了这篇文章:

Set opacity with javascript in IE 8?

这纯粹是用javascript完成的,我使用的是jQuery所以我想在IE8中设置不透明度,但我没有使用jQuery成功。

到目前为止,我这样做:

$('.set').click(function (e) {
         var hiddenSection = $('div.hidden');
         hiddenSection.fadeIn()
         .css({ 'display': 'block' })
         .css({ width: $(window).width() + 'px', height: $(window).height() + 'px' })
         .css({ top: ($(window).height() - hiddenSection.height()) / 2 + 'px',
         left: ($(window).width() - hiddenSection.width()) / 2 + 'px'})
         .css({ 'background-color': 'rgb(190,190,190)'}) //Here bgcolor
         .css({ 'filter': 'alpha(opacity=1000)' }) // here opacity 
         .appendTo('body');
         $('span.close').click(function () { $(hiddenSection).fadeOut(); });
});

无论如何在IE 8中实现这个CSS不透明度,我知道IE8不支持不透明度,但我提到的帖子也在IE 8中完成了。

这句话.css({ 'filter': 'alpha(opacity=**val**)' })可能会有一些障碍。

我怎样才能在IE 8中使用它?

注意:

请避免rgba()我知道它也不适用于IE 8

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

试试这个:

  /* IE 8 */
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";

  /* IE 5-7 */
  filter: alpha(opacity=50);

所以在你的情况下:

.css({ '-ms-filter': 'progid:DXImageTransform.Microsoft.Alpha(opacity=**val**)' })

滤镜不透明度值可以是0到100之间的整数。

了解更多HERE