window的find方法跨内联元素边界工作:
Some <em>sample</em> text.
console.log( window.find('le te') ); // true
但它似乎不适用于块元素边界:
Some <div>sample</div><div>text</div>.
console.log( window.find('le\r\nte') ); // false
我是否错误地使用了该方法,还是需要解决方法? 我的目标是在上面的例子中找到'lete'来操纵它 (不需要RegExp - 只搜索确定的字符串)
答案 0 :(得分:0)
还可以搜索文档正文的textContent
:
Some <div>sample</div><div>text</div>.
console.log(document.body.textContent.search(/le\s*te/)>-1); // true
请参阅the reference。
正如您对问题的评论所指出的那样,没有标准它应该如何运作。如果您删除\r
字符,则此代码适用于Chrome,但不适用于FF:
Some <div>sample</div><div>text</div>.
console.log( window.find('le\nte') ); // true