Показать полную графическую версию : Новый банер при каждой загрузке...
как сделать на js ?
у меня два банера нужно чтобы они менялись при каждой загрузке друг на друга.
наверное надо работать со случайными числами ренд.
скинте простенький код плиззз
Vlad Drakula
20-12-2004, 22:52
FADE
не уверен что случайные числа это хорошо....
может через куки???
а чего тут сложного?
терешь теуст нижнего текстового баннера и заменяешь статический адрес JS скипта на задаваемый от рандома...
тут в впринципе всего 6 строчек кода...
я конечно могу сейчас сечть и написать их, но тогда ты ничему все равно не научишься... лучьше всего учиться на своих ошибках!
вот попробуй, а если не получится задай вопрос...
vadimiron
21-12-2004, 00:18
FADE
Таких скриптов полно в инете
Они, как уже сказал Влад, очень просты
Советую Гугл
p.s. Если не получиться найти, тогда я найду и кину суда код
кажется здесь про это:
http://www.cherry-design.spb.ru/articles/article_27.htm
vadimiron
21-12-2004, 21:54
Да, что то типа того, но насколько я понял, надо, чтобы каждый раз другой банер выводился, тогда в инете ищем "Случайный вывод картинок Java Script"
vadimiron
21-12-2004, 21:56
Например, такой скрипт:
<script language="JavaScript">
<!--
/*
Random Image Link Script
By Website Abstraction (http://www.wsabstract.com)
and Java-scripts.net (http://www.java-scripts.net)
*/
function random_imglink(){
var myimages=new Array()
//specify random images below. You can have as many as you wish
myimages[1]="img1.gif"
myimages[2]="img2.gif"
myimages[3]="img3.gif"
//specify corresponding links below
var imagelinks=new Array()
imagelinks[1]="http://www.wsabstract.com"
imagelinks[2]="http://www.dynamicdrive.com"
imagelinks[3]="http://www.java-scripts.net"
var ry=Math.floor(Math.random()*myimages.length)
if (ry==0)
ry=1
document.write('<a href='+'"'+imagelinks[ry]+'"'+'><img src="'+myimages[ry]+'" border=0></a>')
}
random_imglink()
//-->
</script>
дат тоже самое, там все картинки сразу загружаются и выводяться по мере необходимости (типа рандом), а здесь линки...
Создаешь в текстовом редакторе файл со следующим кодом (показан пример для трех баннеров):
<script Language="JavaScript">
var ad_count = 3;
var now = new Date()
var sec = now.getSeconds()
var ad = sec % ad_count;
ad +=1;
if (ad==1) {
url="http://www.site.com/dir1/dir2/index.html";
alt="альтернативный текст";
banner="http://www.site.com/дорожка к картинке самого баннера.gif";
width="468";
height="60";
}
if (ad==2) {
url="http://www.site.com/dir1/dir2_/index.html";
alt="альтернативный текст";
banner="http://www.site.com/дорожка к картинке самого баннера2.gif";
width="468";
height="60";
}
if (ad==3) {
url="http://www.site.com/dir1/dir2__/index.html";
alt="альтернативный текст";
banner="http://www.site.com/дорожка к картинке самого баннера3.gif";
width="468";
height="60";
}
document.write('<center>');
document.write('<a href="' + url + '" target="_blank">');
document.write('<img src="' + banner + '" width='+ width + ' height=' + height + ' alt="' + alt + '" border=0><br>');
document.write('</center>');
</script>
Сохраняешь файл как, например, banner_rotate.js. Суешь куда-нибудь в папку сайта. Потом на странице там, где должен быть баннер, пишешь
<script language="JavaScript" src="/my_scripts/banner_rotate.js"></script>
Соответственно, если надо меньше или больше баннеров, чем три, меняешь цифирку во второй строке и соответственно количество ниже идущих кусков кода.
о, спасибо, большое, ребят.
конечно оба варианта интересны, 1й там где картинки(банеры) загружаются все а потом меняются, или там где ссылка генерируется и потом уже загружается только один банер.
я вот тут покопался и нашел интересную функцию, которая неописана в спецификациях js, но работает довольно интересно, картинка загружаются при событии, НО при етом страничка не перегружается, я такого чесно говоря еще не видел. под интернет эксплорером тестил. вот посмотрите: loadImage() на страничке http://ros-expo.com/wares/1800.html
если у кого есть описание этой функции скинте плиЗ
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.