- PVSM.RU - https://www.pvsm.ru -

Простой bookmarklet как средство очистки содержимого веб-страницы от нежелательных элементов

JavaScrip использую достаточно давно, букмарклеты [1] рассматривал когда-то в познавательных целях, но чтобы использовать,- необходимости не было.
Мысль о написании букмарклета пришла спонтанно: проверяя почту на одном из онлайн серверов ощутил явный дискомфорт, вызванный навязчивым (пёстрым и большим) флэш-банером, и это меня несколько озадачило, так как реклама встречается сплошь и рядом, временами некачественно сделанная реклама досаждает, но не так что бы очень (скорее воспринимается как окружающий фон). Первая мысль была найти дополнение для браузера (типа Flashblock), и уже было собрался устанавливать, но по разным причинам (использую разные браузеры на нескольких компьютерах, нежелание настраивать и сопровождать и т.п., да и далеко не все флэш-объекты провоцируют на то, чтобы их удалили) особого энтузиазма по поводу установки подобных дополнений не испытывал, но тут вспомнил про букмарклеты и написал простой код, позволивший по мере необходимости легко справляться с очисткой страницы:


(function(tagNameList){for(var j = 0, m = tagNameList.length; j < m; j++){var obj = document.getElementsByTagName(tagNameList[j]); for(var i = 0, n=obj.length; i < n ; i++) {obj[i].style.display = 'none'; }};})(['object','embed','iframe']);

Небольшой комментарий для начинающих:

Код встроен в анонимную функцию см. http://en.wikipedia.org/wiki/Anonymous_function#JavaScript [2]

Действующие примеры для экспериментов с Anonymous_function:
http://ideone.com/DWtzx [3]
http://ideone.com/BCZlR [4]

В качестве аргумента анонимной функции передается массив имен тегов ('object','embed','iframe'), по которым ищутся соответствующие объекты в DOM HTML и найденные объекты превращаются в невидимые obj[i].style.display = 'none';… Изменяя содержимое данного списка, можно изменять состав объектов, к которым необходимо получить доступ.

Готовое решение представлено здесь:
http://jsfiddle.net/ySG6a/ [5]

Желающие больше узнать о букмарклетах, могут ознакомиться с обширной подборкой статей по данной теме на Хабре: http://habrahabr.ru/search/?q=bookmarklet [6]

Автор: multiresearcher


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/javascript/11989

Ссылки в тексте:

[1] букмарклеты: http://ru.wikipedia.org/wiki/Букмарклет

[2] http://en.wikipedia.org/wiki/Anonymous_function#JavaScript: http://en.wikipedia.org/wiki/Anonymous_function#JavaScript

[3] http://ideone.com/DWtzx: http://ideone.com/DWtzx

[4] http://ideone.com/BCZlR: http://ideone.com/BCZlR

[5] http://jsfiddle.net/ySG6a/: http://jsfiddle.net/ySG6a/

[6] http://habrahabr.ru/search/?q=bookmarklet: http://habrahabr.ru/search/?q=bookmarklet