JS DOM: Get elements by text content

前端 未结 3 954
天命终不由人
天命终不由人 2020-12-09 05:12

I am looking for a way to perform fulltext search on the DOM tree with JS. In two words, I would like to retrieve the list of text nodes which contain a given string.

<
3条回答
  •  孤街浪徒
    2020-12-09 05:52

    If you have a modern browser, you can always use XPATH, since it has content-based search.

    This is an example:

    document.evaluate('//*[text()="' + string + '"]', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE).snapshotItem(0);
    

    And with older browsers, you can shim XPATH in with something like http://llamalab.com/js/xpath/

提交回复
热议问题