Получить все элементы на странице с указанным c innerText / textContent - PullRequest
0 голосов
/ 25 апреля 2020

Я пишу расширение chrome, и я хотел бы, чтобы оно скрыло все элементы на странице, которые упоминают определенные c элементы текста. Самое близкое, что я получил, это:

let strs = document.querySelectorAll("a, p, h1, h2, h3, h4, h5, span")

for (var i = 0; i < strs.length; ++i){
    el = strs[i]
    str = el.innerHTML

    if (str.match(/text2|text3|text1\-19/gi)){
        //do something
    }
}

Однако, он не захватывает каждый элемент на странице с соответствующим текстом. При взгляде на предметы он не хватает; обычно это div с прямым> "text <текстовым содержимым. Однако, если я добавлю 'div' к селекторам выше, это не сработает, так как я думаю, что он захватывает самый родительский div; по сути, всю страницу. Возможно, мне удастся обойти это, схватив самый детский элемент в самом нижнем конце области с помощью прямого текста, но я не могу понять, как это сделать. Кто-нибудь сталкивался с этим? Я видел некоторые другие решения по переполнению стека для подобных проблем, но я не мог заставить их работать в моем коде. </p>

Любая помощь была бы великолепна, спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...