В Internet Zone-154 была небольшая заметка Локальная баннерная система. Автор - Вадим Беляков (http://tuta.da.ru) предлагал поставить на страничку баннер, используя небольшой javascript. Я прочитал этот номер лишь в середине апреля. Мне сразу же пришло в голову использовать его для текстовой рекламы. Устанавливая скрипт, я обнаружил две небольшие, но досадные ошибки, почему считаю себя вправе предложить здесь мою версию.
Состоит он также из двух фрагментов. Первый можно поместить в любом месте страницы. Вадим предлагает сделать это в тэге <HEAD>. Мне кажется, лучше всё-таки в отдельном файле - роботы поисковиков помещают в свои базы данных первые строки с проиндексированных страниц, и зачем вам надо, чтоб это были строки <SCRIPT language="JavaScript"> // <!-- ?..
На всякий случай сообщу, что этот отдельный файл должен иметь расширение .js, и НЕ должен содержать пояснительные строки, указывающие на начало и конец скрипта. Он содержит только собственно текст скрипта, начинающийся словом function, и заканчивающийся фигурной скобкой. Файл может содержать несколько скриптов - не проблема. Привязка к конкретной страничке осуществляется добавлением между <HEAD> и </HEAD> строчки типа <SCRIPT LANGUAGE="JavaScript" SRC="ads.js"></SCRIPT> Путь может быть как относительным, так и абсолютным (можно и на другой сайт ссылаться:) И, кстати, подвязывать можно несколько файлов со скриптами, просто перечисляя их один за другим.
Текст моего ads.js в подсокращенном виде выглядит так:
function lnks() { t = 12 bn = new Array(t)
bn[0]=grammar/smikhut.html; bn[1]=Кто такая Сара Битахон?;
bn[2]=grammar/kha_ekh.htm; bn[3]=ХАханьки и ЭХаньки иврита.;
(parseInt(navigator.appVersion.substring(0,1)) < 3)) { return( ); } var j=Math.floor((t-1)*Math.random());
if (Math.ceil(j/2) != Math.floor(j/2)) j = j-1;
document.write(< a href= + bn[j] + >< FONT SIZE=-1> + bn[j+1] + </FONT<>/a>); return( ); }
Строчка bn = new Array(t) объявляет массив и его размер. Вадим не написал её, может быть, у вас сработает всё и без, но мой комп выдаёт ошибку. Поскольку количество строчек используется и ниже, то я решил объявить её переменной: t=12. Не забудьте изменить t при изменении размера массива (то есть при изменении количества ваших ссылок).
Ячейки bn[0], bn[2] и т. д. - урлы, на которые вы ссылаетесь, у меня они ведут в папки моего же сайта, но, как понимаете, могут быть и внешними. Ячейки с нечётными номерами - ваши комментарии, которые появятся на месте ссылки. Здесь я тоже изменил нумерацию - у Вадима она шла с 1, но это давало мне порой строчку undefined. Впрочем, это было из-за способа вычисления номера ссылки. Его я тоже изменил:
Строка var j=Math.floor((t-1)*Math.random()); выбирает случайное число между 0 и t-1. Для того, чтоб оно всегда было чётным или нулем, используется проверка if (Math.ceil(j/2) != Math.floor(j/2)) j = j-1;
Ну и последняя команда - вывод результата вычисления непосредственно на страницу.
Вторая часть скрипта вставляется непосредственно в место, где вы хотите вывести переменную ссылку. У меня это ячейка таблицы на первой страничке рядом с меню.