Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Удаление div class, содержащего определенные слова (https://javascript.ru/forum/misc/78231-udalenie-div-class-soderzhashhego-opredelennye-slova.html)

winrar2018 12.08.2019 20:11

Удаление div class, содержащего определенные слова
 
Как удалить из этой ленты новостей строки, содержащие, например, слово "Наполи"?

Каждая новость формируется в div-классе "news-item", в который входят еще два класса: "news-item__time", "news-item__content".

Есть код для удаления div-класса "news-item", но он удаляет все строки..

while (document.getElementsByClassName('news-item')[0]) {
        document.getElementsByClassName('news-item')[0].remove();
    }

рони 12.08.2019 20:39

winrar2018,
https://javascript.ru/forum/misc/572...tml#post381794

winrar2018 12.08.2019 20:55

рони, спасибо

А можно как-то удалить целую строку с определенным словом?

Чтобы вместо этого получилось так

рони 12.08.2019 21:24

winrar2018,
document.querySelectorAll('.news-item').forEach(function(el) {
   /Наполи/.test(el.textContent)  && el.remove()
})

winrar2018 12.08.2019 21:39

рони, спасибо!

winrar2018 16.08.2019 18:26

Адаптировал данный скрипт для постов в группах ВК, чтобы видеть только то, что мне нужно, но есть проблема... Скрипт работает только с теми постами, которые были загружены при первом заходе на страницу. При прокрутке страницы, ВК подгружает еще посты, и с ними скрипт уже не работает.. Можно ли что-то сделать, чтобы все работало и с подгруженными постами?

рони 16.08.2019 18:47

winrar2018,
добавить код в функцию подгрузки или в setInterval

winrar2018 16.08.2019 19:58

рони, спасибо. Через setInterval получилось.

winrar2018 27.02.2020 17:22

Подправил скрипт, чтобы было удобнее читать новости на этом сайте. Например, не хочу видеть новости, в заголовке которых есть Huawei. Каждая новость содержится в классе article-entry.article-infeed. Если его подставляю в скрипт, то он работает, но он так же удаляет другие новости, содержащие это слово не в заголовке.

Заголовок содержится в entry-header, если его подставляю в скрипт, то удаляется только заголовок... Как с помощью оператора if сделать, чтобы удалялись только те новости, которые содержат нужное слово в заголовке?

(function($) {
    'use strict';

document.querySelectorAll('.entry-header').forEach(function(el) {
   /Huawei/.test(el.textContent) && el.remove()})


})();

рони 27.02.2020 18:09

winrar2018,
(str => {
document.querySelectorAll('.article-entry.article-infeed').forEach(el =>
   (new RegExp(str, i)).test(el.querySelector('.entry-header h1').textContent) && el.remove())
})('Huawei');


Часовой пояс GMT +3, время: 08:17.