1

highlighter.highlightSelection関数(マークタイプ)で作成されたアノテーションの数が増えると、なぜ rangy がより遅くなるのですか? パフォーマンスは最初は非常に優れていますが、注釈が大きくなるにつれて低下します。

では、関数のパフォーマンスを向上させるにはどうすればよいhighlighter.highlightSelection()ですか? HTMLのさまざまな部分を選択すると、パフォーマンスが指数関数的に悪化するためです。非常に長い html のフラグメントを選択すると、パフォーマンスが最悪になります。これを修正しようとしましたが、方法がわかりませんでした。

なぜこれが起こるのか知っている人はいますか?

4

1 に答える 1

2

新しいハイライトが作成されるたびに、Rangy はすべての既存のハイライトを削除して再作成する必要があるため、パフォーマンスが低下します。この非効率性が、ハイライター モジュールが公式の Rangy モジュールとして含まれていない理由の 1 つです。

私は、パフォーマンスを向上させる可能性のある別の文字オフセットベースのアプローチに取り組んでいるので、希望があります.

于 2013-01-04T23:39:26.590 に答える