使用以下代码,我可以在页面上找到文本并突出显示
document.designMode = "on";
if(window.find(textLine, true)){
document.execCommand("BackColor", false, "rgb(250, 250, 0)");
textSelection.collapseToEnd();
}
document.designMode = "off";
但我的要求是在所选文本中查找文本。即如果所选文本中存在某些单词,我想要突出显示某些文字。使用surroundCountents()
方法,我可以用一些DIV元素包装初始文本,然后尝试搜索HTML,但我正在寻找一个类似上面代码的解决方案。有什么建议吗?
答案 0 :(得分:0)
不支持使用window.find查找已从上一个窗口中选择的文本。查找window.find方法(从我看到的)不支持在范围或选择中搜索。 / p>
API在这里:http://help.dottoro.com/ljkjvqqo.php
我怀疑你可以再次使用window.find作为你的关键字,并检查插入位置等,以验证结果是原始结果,但在第一次赌注时似乎效率低下。 看看选择API和范围... https://developer.mozilla.org/en/docs/DOM/Selection 你可以运行2 window.find并比较范围,看第二个是在第一个范围内。
我认为一个简单的简单javascript文本搜索对你想要的东西来说非常有效和快速。