Уоррен, возникла идея ) В настройках дополнения сделать возможность выбирать как отображать рекламные блоки - скрывать, выделять цветом или бордер добавить. И какие сервисы Яндекса оставить, не убирать из выдачи. Допустим, я не против Яндекс.Карт, хочу их оставить.
Спасибо ) Можно конечно. Если будете публиковать - укажите мое соавторство )
Точно, спасибо. У всех первых элементов есть атрибут 'data-first-snippet'. Исключаем его )
for (let e of elem) {
let l_attr = e.attributes.length
for (let attr of e.attributes) {
if (attr.name == 'data-first-snippet') l_attr = l_attr - 1;
}
if (l_attr > 4) e.style.background = '#fffacd';
}
Del
В той же папке файл ABHighlightADSYandexSearch.zip
Уоррен, элементы выдачи Яндекса содержат разное количество атрибутов. У рекламных блоков и блоков от разных Яндекс услуг их больше. Если ориентироваться на количество атрибутов получается интересно:
for (let e of elements) {
if (e.attributes.length > 4) {
e.style.background = '#fffacd';
}
}
Я тоже об этом подумал. У меня не стоит и судя по скрину Yuri Trenin - у него тоже не установлен. Сейчас поставлю AdBlock, посмотрю, что меняется )
Сейчас попробую в 10-ке )
В той же папке второй вариант - DelADSYandexSearch.zip
Этот скрывает блоки.
У меня 7-ка...
Уоррен, посмотрите код блока, который содержит слово "реклама".
Вот дополнение для Я.Б и хрома:
Блок, в который содержит слово "реклама".
Это мой вариант:
let elements = document.querySelectorAll('.label_theme_direct');
for (let elem of elements) {
elem.style.background = '#FF0000';
let par = elem.closest('li');
par.style.background = '#fffacd';
}
Если так, то будет ваша задумка:
let elements = document.querySelectorAll('.label_theme_direct');
for (let elem of elements) {
let par = elem.closest('li');
par.style.display = 'none';
}
Я себе такое набросал ) Выделяет рекламные блоки и слово "реклама" другим цветом.
Ростов-на-Дону