2

IE8用にサイトを最適化する必要があります。また、不透明度を直接サポートしていません。-ms-filterプロパティを使用して設定できます。私のJavaScriptでは、jquery animate()を使用して不透明度を変更しています。しかし、-ms-filterでどのように使用しますか

現在これを与えています

$('.topbar img').animate({opacity:1, -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"},1500);

しかし、JSエラーをスローします。明らかに無効なプロパティ。IE8でアニメーション化する方法を教えてもらえますか?感謝します。

4

2 に答える 2

6

使用してみてください:

$('.topbar img').animate(
      {
       opacity:1, 
       '-ms-filter': 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)'
//     ^quotes
      }
  ,1500);

も参照してください...

-ms-filter実際には、jqueryを使用すると、プロパティは必要ありません。例については、このjsfiddleを参照してください

于 2012-12-21T13:35:04.380 に答える
0

jQueryには、アニメーションのすべてのステップでトリガーされるstep()コールバックがあります。

$('.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 + ')');
  }
});
于 2012-12-21T13:48:26.283 に答える