javascript - Rangy 函数 highlightSelection 性能

标签 javascript rangy

为什么当使用函数highlighter.highlightSelection (marktype) 做的注释数量越来越多时,rangy 变得更加迟缓? 一开始性能非常好,但随着注释的增加性能会下降。

那么,我该怎么做才能提高函数 highlighter.highlightSelection() 的性能?因为当我选择 html 的许多不同部分时,性能会呈指数级下降。如果您选择一段很长的 html,性能将会最差。我试图解决这个问题,但我不知道如何解决。

有人知道为什么会这样吗?

最佳答案

性能下降是因为 Rangy 必须在创建新高亮时删除并重新创建所有现有高亮。这种低效率是荧光笔模块从未被包含为官方 Rangy 模块的原因之一。

我正在研究一种不同的、基于字符偏移的方法,它可能会提高性能,所以还是有希望的。

关于javascript - Rangy 函数 highlightSelection 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14164400/

相关文章:

javascript - 检查 Immutable.js 映射值是否包含 char

javascript - 如何将相同的 JQuery 应用于两个导航并为每个导航添加不同的类

javascript - 获取选择相对于某些父节点的偏移量

javascript - 使用(或不使用)range 即时替换内容可编辑字符

javascript - Controller 作为语法不将新对象传递给数组

javascript - 为什么从函数调用分配给属性innerHTML不起作用?

javascript - 计算 Angular 2 Typescript 中选中了多少个复选框?

javascript - 范围选择不适用于 Microsoft Edge

javascript - 将表格插入内容可编辑的 div

javascript - TypeError : g. rangy.saveSelection 不是使用 textangular + rangy + browserify 的函数