7

HTMLテーブルを使用して小さなWebベースのアプリケーションを構築しています。このテーブルの珍しい特性の1つは、一番上の行と左の列が固定されていることです(Excelと同様)。私は少しのjQueryとCSSを使用してこれを達成しました。

問題は、私のコードをトリガーするjQueryイベントが$(window).scrollイベントであり、明らかにほとんどのブラウザー(ChromeおよびIE)は、このイベントによって呼び出されるコードの実行が終了する前にページを再描画します。その結果、左側の列と一番上の行は、テーブルの残りの部分に「追いつく」ために一瞬かかります。

私の問題を示すために、簡略化したjsFiddleの例を提供しました。注:テーブルが非常に小さく、(比較的言えば)コンテンツが空の場合、ラグはあまり目立ちません。それにもかかわらず、それはそこにあります(Firefoxを使用していないと仮定します)。この遅れを取り除く方法はありますか?

ありがとう!

4

2 に答える 2

2

単なるアイデアですが、検討する価値があるかもしれません。この記事requestAnimationFrameで説明されているように(または同様の方法で)使用してみることができます。これにより、更新/「ラグ」の問題がスムーズになる可能性があります。

于 2012-07-05T14:40:22.157 に答える
2

これをscrollイベントまたはrequestAnimationFrameのいずれでも機能させることができませんでした。私がやったのは、スクロールとレンダリングが行われる前に発生するマウスホイールイベントにアタッチすることです。スクロールイベントが下向きになっている場合は、レンダリングに間に合うように適切なクラスを適用できます。

于 2014-07-11T23:34:59.357 に答える