Автор: Алексей
Голубев
Сайт: http://www.frnet.narod.ru/
За один месяц мне пришло два письма с одной
и той же просьбой скрыть баннер со страниц расположенных на хостинге holm.ru. Конечно баннеры убрать можно, и я решил, что данная тема является достаточно интересной для широкого круга людей, желающих разместить
свою страницу в Интернете бесплатно и с сохранением дизайна. В довесок решил написать и про boom.ru
boom.ru
Итак, начнем с майловского хостинга. Данный хостинг вставляет баннер, который портит
ваш дизайн, а также открывает всплывающее окошко с баннером. Для того чтобы определить, как убрать баннер, нужно просмотреть код, вставляемый хостером. Для boom.ru это следующие строки:
<script language="JavaScript" src=http://r.mail.ru/cgi-bin/banners/js/1240></script>
<script language="javascript" src=http://bbe.boom.ru/lr.js></script>
<!--TopList
COUNTER--><script language="JavaScript"><!--
d=document;a='';a+=';r='+escape(d.referrer)
js=10//--></script><script language="JavaScript1.1"><!--
a+=';j='+navigator.javaEnabled()
js=11//--></script><script
language="JavaScript1.2"><!--
s=screen;a+=';s='+s.width+'*'+s.height
a+=';d='+(s.colorDepth?s.colorDepth:s.pixelDepth)
js=12//--></script><script language="JavaScript1.3"><!--
js=13//--></script><script
language="JavaScript"><!--
d.write('<img src=http://top.list.ru/counter'+
'?id=203643;js='+js+a+';rand='+Math.random()+
' height=1 width=1>')
if(js>11)d.write('<'+'!--
')//--></script><noscript><img
src=http://top.list.ru/counter?js=na;id=203643
height=1 width=1 ></noscript><script language="JavaScript"><!--
if(js>11)d.write('--'+'>')//--></script><!--TopList
COUNTER-->
Выглядит достаточно зловеще. А еще радует, что на страницу автоматически вставляется их счетчик. Однако весь код разбирать не надо, достаточно просмотреть первые
две строки и сразу станет ясно, что баннер вставляется из файлов http://r.mail.ru/cgi-bin/banners/js/1240 и http://bbe.boom.ru/lr.js. Скачаем их, путем обыкновенного сохранения страницы из Интернета.
Откроем
первый файл. Это обыкновенный текстовый документ, хоть и без расширения. Смотрим туда. Для нас представляет интерес следующая строка:
window.open(\"http://win.mail.ru/cgi-bin/banner?id=1229\",
\"Popunder15318\",\r\n \"menubar=no,resizable=no,width=500,height=250,toolbar=no,\" +\r\n\"screenX=\"+posX+\",screenY=\"+posY+\",left=\"+posX+\",top=\"+posY);\r\n
self.focus();\r\n }\r\n</script>");
Видно, что здесь используется метод open объекта window, а это значит, что она выводит всплывающее окошко не никому неугодным и непригодным баннером.
А что это за Popunder15318 такой? Посмотрев документацию метода, понимаем, что это имя окна, в котором показывается баннер. Что с ним делать??? Что за вопрос, конечно, закрыть! Следующей функцией, которую
надо привязать к событию onLoad web-страницы:
function close_popup() {
Popunder1.close() }
В ней используется метод close того же элемента, только здесь мы даем
конкретное его имя.
Второй баннер вообще убирается очень легко, даже не надо смотреть в код, т.к. при наведении на крестик (символ, означающий закрытие баннера) в строке состояния браузера выводить
вот это:
javascript:close_banner()
Понятно, что для закрытия баннера нужно вызвать именно эту функцию, также при событии onLoad. Итого получим следующий тег body:
<body onLoad=”close_popup();close_banner()”>
Все реклама больше не раздражает ваш чувствительный к ярким картинкам ненужного содержания глаз.
holm.ru
Вот мы легким движением наших пальцев избавились от хлама на boom.ru. Таким же движением избавляемся от ][лама на holm.ru. Смотрим в код страницы, находим строки, которые явно кто-то за нас написал
в не предлежащей ему или ей web-странице (их там достаточно много, поэтому я приведу лишь те, которые нам нужны):
boom.rudocument.write('<font size=-3><img src="http://register.h10.ru/g/cw.gif?glubink7"
height=1 width=1% border="0" name="CheckWidth" hspace=0 vspace=0>');
document.write('<img src="http://register.h10.ru/g/ch.gif?glubink7" height=1% width=1 border="0"
name="CheckHeight" hspace=0 vspace=0><br clear=all></font>');
document.write("<center><A HREF='http://ad4.lbn.ru/bb.cgi?cmd=go&pubid=3729001&pg=1&vbn=322&num=1&w=468&h=60&nocache="
+ rndnum + "' target='_top'>");
document.write("<IMG SRC='http://ad4.lbn.ru/bb.cgi?cmd=ad&pubid=3729001&pg=1&vbn=322&num=1&w=468&h=60&nocache=" +
rndnum + "' width=468 height=60 Alt='LBN Elite' border=0></A><br>");
document.write('<A HREF="http://ad.text.tbn.ru/bb.cgi?cmd=go&pubid=2842552&pg=1&vbn=350&num=1&w=468&h=15&nocache='
+ rndnum + '" target="_top">');
document.write('<IMG SRC="http://ad.text.tbn.ru/bb.cgi?cmd=ad&pubid=2842552&pg=1&vbn=350&num=1&w=468&h=15&nocache='
+ rndnum + '" width=468 height=15 Alt="TBN_Text" border=0></A></CENTER>');
Их и так не мало. Что мы от сюда можем узнать:
1) то, что сначала вставляются две
какие-то непонятные картинки со странными размерами (первая и вторая строки). Не знаю, зачем они нужны, но убрать их надо;
2) то, что далее (3 и 4 строки) вставляются баннеры.
Как их скрыть? Да
очень просто: использовать обращение к картинкам по порядковому номеру (нумерация начинается с нуля) и к их стилевому свойству display, напишем для этого функцию:
function noBann()
{
document.images[0].style.dysplay="none";
document.images[1].style.dysplay="none";
document.images[2].style.dysplay="none";
document.images[3].style.dysplay="none";
}
Присваиваем ее событию onLoad.
Так как возможно способ вставки баннера может меняться, то стоит огородить себя от случайно исчезнувших, нужных картинок следующим образом:
<img
style="display:none" src="x">
<img style="display:none" src="x">
<img style="display:none" src="x">
<img style="display:none"
src="x">
Поместить это дело надо сразу после открывающего тега body. Этим html-кодом мы вставляем на страницу четыре невидимые картинки и т.к. они вначале документа, то если вдруг
код хостера не вставился или вставился не так, как нам хотелось бы, эти картинки примут индексы 0,1,2,3. И исчезать будут уже они. Подчеркиваю, только если баннеры либо вставлены не так, либо не вставлены!
Во всех остальных случаях будут убираться баннеры!
P.S. Автор статьи не рекомендует вам избавляться от баннеров на страницах, так как это может повлечь за собой удаление вашего аккаунта без предупреждения.
Обсудить
в форуме...>>>>