在IE中突出显示文本节点的jQuery文本

时间:2014-03-07 20:41:33

标签: javascript jquery internet-explorer highlight textnode

我目前正在使用这个名为 HighlightJS 的精彩插件,用于在用户输入过滤字段时突出显示页面上的文字。

这很好用,除了最近我们从一个非常旧版本的jQuery(1.8.2到1.11.0)更新,这在IE(所有版本)中不再像预期的那样工作。它似乎将单个文本节点分解为每个搜索项目的文本节点。当我不断添加&删除keyup事件的突出显示。

以下是过去单个文本节点的屏幕截图,现在在IE11检查器中显示为多个。 enter image description here


我在IE here

中整理了一个以相同方式打破的演示

有关如何改进此插件以使其按预期工作的任何想法?我肯定会在GitHub上向他发出拉动请求,以便其他人也可以受益!

1 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,并将其隔离到IE11中本机DOM normalize()函数实现的错误行为。我已经在我的问题上发布了一些复制步骤和解决方法:

Why Does IE11 Handle Node.normalize() Incorrectly for the Minus Symbol?