查找跨越多个节点的文本

时间:2011-08-12 10:49:22

标签: javascript jquery html firefox dom

我正在寻找一种方法来查找跨越多个节点的文本,就像Firefox一样,例如

使用给定的HTML:

<p>Lorem ipsum <b>dolor</b> sit amet.</p>

当我通过ctrl + f搜索文本“ipsum dolor”时,Firefox将选择该文本,即。将创建Range对象。

我知道我可以轻松地在文本节点中搜索文本(视频Find text string using jQuery?),但这在上面的示例中不起作用。

2 个答案:

答案 0 :(得分:1)

这将选择包含指定为p的参数的文本的所有indexOf元素。 text方法获取元素的所有文本节点的内容,因此示例中的b标记无关紧要:

$("p").filter(function() {
  return $(this).text().indexOf("ipsum dolor") > -1;  
});

看到它正常工作here

答案 1 :(得分:1)

window.find正是我正在寻找的。