【发布时间】:2014-04-11 04:48:54
【问题描述】:
我目前正在使用这个名为 HighlightJS 的出色插件,当他们在过滤器字段中键入内容时突出显示页面上的文本。
这很好用,除了最近我们从一个非常旧的 jQuery 版本(1.8.2 到 1.11.0)进行了更新,这在 IE(所有版本)中不再像预期的那样工作。它似乎将单个文本节点分解为每个搜索项目的文本节点。当我不断添加和删除 keyup 事件的突出显示时,这是有问题的。
这里是以前单个文本节点现在在 IE11 检查器中显示为多个的屏幕截图。
我已经整理了一个演示,在 IE here 中以相同的方式中断
关于如何改进此插件以使其正常工作的任何想法?我一定会在 GitHub 上向他提出拉取请求,以便其他人也能从中受益!
【问题讨论】:
-
什么是
:icontains不应该是:contains吗? -
Fiddle 乍一看似乎在我的 Win 7 IE 10 VM 中运行良好。我应该做些什么来证明它不起作用?
-
@Pavlo -
:icontains是我做的,所以这是一个不区分大小写的搜索。小提琴中包含的代码如下。 -
@JasonReid - 进行一次搜索,然后再进行一次搜索。尝试在单词中间搜索东西。 “adam”然后“male”然后“am”然后“da”请记住,突出显示是我遇到的问题,而不是项目的显示/隐藏。
-
奇数。我根本没有遇到任何突出显示的问题。在 Win 7 VM 上运行 IE10,在另一个 VM 上运行 IE9。不幸的是,手边没有 IE11。
标签: javascript jquery internet-explorer highlight textnode