0

メッセージを表示する div があります。メッセージを数秒間表示してから、消えるまでフェードします。

通常の div を定義し、ページが $('#mydiv').hide(); でロードされたときに非表示にします。

目的の効果で div を表示するボタンがあります。このために、次を使用しています。

  $('#myDiv').fadeIn('fast').effect("highlight", { color: "green", mode:"hide" }, 5000);

これは Firefox と Chrome では完全に機能しますが、IE (6、7、8 で試しました) では最初の 1 回だけしか機能せず、その後はメッセージが表示されません。

IE でこれを実現する方法がない場合は、ハイライトが終了した後にフェードアウトなどを実行する方法を知りたいです。

ご協力いただきありがとうございます

4

2 に答える 2

2

このjQuery チケットがあなたの問題に関連しているようです。

私が見つけた回避策は追加することです

$('#myDiv').removeAttr('style');

$('#myDiv').fadeIn('fast')
           .effect("highlight", { color: "green", mode:"hide" }, 5000);

IE フィルターの問題をクリアします。

于 2009-10-21T18:26:19.420 に答える
1

一般的に言えば、私はエフェクトを連鎖させません。代わりにコールバックを使用することをお勧めします。

$('#myDiv').fadeIn('fast', function() {
  $(this).effect("highlight", { color: "green", mode:"hide" }, 5000);
});
于 2009-10-21T16:30:54.770 に答える