5

CSS トランジションを試す際に、rightcss スタイルを負の数から 0 にトランジションし、イベントが発生すると再起動しtransitionendて無限スクロール効果を得る小さなスクロール デモを作成しました。これが私のデモのフィドルです - http://jsfiddle.net/XhFdv/

これは、最新の FF、Chrome、Safari (win)、Opera で動作します。IE 10 (Win 7 と Win 8 の両方でテスト済み) ではイベントが発生しますが、正しいプロパティを開始時の負の数に戻そうとしても機能していないようです - 設定後も 0 のままになることがよくあります (ただし、いつも)。

物事をより面白くするために、console.log()またはalert()を追加するだけで、多くの場合、期待どおりに実行できます。これは、UIレイヤーに未完成の何かがあると私に思わせています。setTimeout(..., 0)レンダリングが追いつくことができるように、より多くのスタイル設定をラップしようとしましたが、それは役に立たなかったようです.

これは IE 10 のバグですか、それともデモ スクリプトに欠けているものがありますか?

4

1 に答える 1

1

alert()スクリプトの実行をブロックするため、機能します。二次的な対策として、再描画またはリフローをトリガーするものが次善の策です。

  • visibility:hidden/visibleクラス属性の変更によるトグル
  • visibility:hidden/visibleスタイル属性の変更によるトグル
  • CSSOM によるスタイルシートの追加
  • 要素を非表示にするdisplay:none
  • 計算しoffsetWidthたりoffsetHeight
  • scrollイベントのトリガー
  • :hover問題の要素の兄弟で疑似クラスをトリガーする

参考文献

于 2014-06-20T02:01:55.803 に答える