Ротатор баннеров 
		
		
		
		Добрый вечер дамы и господа:thanks: . Имеется подобный скрипт, предназначенный для ротатации баннеров. В папке "ban" находятся 3 разных баннера одинакового размера. В данном случае ссылка со всех трёх картинок ведёт на один и тот-же сайт.  
	Вопрос: как видоизменить код, для того, чтобы привязать каждому баннеру отдельную ссылку? 
<script language="JavaScript">
i=0;
img_a=new Array()
img_a[0]=new Image()
img_a[1]=new Image()
img_a[2]=new Image()
img_a[0].src="ban/1.jpg"
img_a[1].src="ban/2.jpg"
img_a[2].src="ban/3.jpg"
function img_b()
{
document.images[0].src=img_a[i].src
document.images[0].src=img_a[i].src
document.images[0].src=img_a[i].src
i++
if(i>2) i=0;
setTimeout("img_b()", 4000)
}
</script>
<body onLoad=img_b()>
<a href="http://www.mail.ru" target="_blank" title="Mail"><img src="ban/1.jpg"></a>
</body>
В javascript я полный чайник со свистком :( , собственно поэтому и выношу на всеобщее обсуждение этот простой вопрос.  | 
	
		
 вам не хватает фазы луны ( рандома, он же случайность ) 
	
<script language="JavaScript">
img_a=new Array()
img_a[0]=new Image()
img_a[1]=new Image()
img_a[2]=new Image()
img_a[0].src="ban/1.jpg"
img_a[1].src="ban/2.jpg"
img_a[2].src="ban/3.jpg"
i = Math.floor( Math.random( ) * ( - 3 ) ) + 4 // случайное число между 1 и 3
function img_b()   {
document.images[0].src=img_a[i].src;
i++;
if( i == 3 ) i = 0 ;
setTimeout("img_b()", 4000);
}
</script>
<body onLoad=img_b()>
<a href="http://www.mail.ru" target="_blank" title="Mail"><img src="ban/1.jpg"></a>
</body>
 | 
	
		
 melky, 
	:no: Вопрос был про ссылку а не про случайное появление картинок  | 
	
		
 Ваш скрипт только картинку подменяет в баннере, а не весь баннер. 
	Если картинка просто обернута в гиперссылку, то можно к href обращаться document.images[0].parentNode.href так например, в любом случае до родителя добраться можно  | 
	
		
 poorking, 
	:thanks: 
<!DOCTYPE html>
<html>
<head>
  <title></title>
<script language="JavaScript">
var img_href =['http://www.mail.ru','http://www.google.ru/','http://search.yahoo.com/'],
img_title = ['Mail','Google','Yahoo'],
i = 0,
img_a=new Array();
img_a[0]=new Image();
img_a[1]=new Image();
img_a[2]=new Image();
img_a[0].src="http://javascript.ru/forum/images/smilies/victory.gif";
img_a[1].src="http://javascript.ru/forum/images/smilies/dance3.gif";
img_a[2].src="http://javascript.ru/forum/images/smilies/agree.gif";
function img_b()   {
var n = i%3;
document.images[0].src=img_a[n].src;
document.images[0].parentNode.href=img_href[n];
document.images[0].parentNode.title=img_title[n];
i++;
setTimeout("img_b()", 4000);
}
window.onload=img_b
</script>
</head>
<body>
<a href="http://www.mail.ru" target="_blank" title="Mail"><img src="http://javascript.ru/forum/images/smilies/victory.gif"></a>
</body>
</html>
 | 
	
		
 Цитата: 
	
 Цитата: 
	
 Как говорится - истина была где-то рядом :D P.S. Исчерпывающий ответ на вопрос получен. Тему можно закрывать.  | 
	
		
 Рони, приветствую. В вашем скрипте есть проблема: 
	если на странице есть еще какие либо картинки, которые находятся выше картинки, которая задействована скриптом, то задействуется картинка, которая выше картинки из скрипта и она заменяется картинками из ротатора и ротируется, а оригинал перестает ротироваться. Вот пример: Выше картинки из скрипта я установил картинку с флагом. Результат вы видите. Как это исправить? Как сделать, чтобы любые другие картинки не подтягивались скриптом? 
<!DOCTYPE html>
<html>
<head>
  <title></title>
<script language="JavaScript">
var img_href =['http://www.mail.ru','http://www.google.ru/','http://search.yahoo.com/'],
img_title = ['Mail','Google','Yahoo'],
i = 0,
img_a=new Array();
img_a[0]=new Image();
img_a[1]=new Image();
img_a[2]=new Image();
img_a[0].src="http://javascript.ru/forum/images/smilies/victory.gif";
img_a[1].src="http://javascript.ru/forum/images/smilies/dance3.gif";
img_a[2].src="http://javascript.ru/forum/images/smilies/agree.gif";
function img_b()   {
var n = i%3;
document.images[0].src=img_a[n].src;
document.images[0].parentNode.href=img_href[n];
document.images[0].parentNode.title=img_title[n];
i++;
setTimeout("img_b()", 4000);
}
window.onload=img_b
</script>
</head>
<body>
<!-- моя картинка -->
<img src="http://www.flags.net/images/smallflags/RUSS0001.GIF" alt=""/><br>
<!-- моя картинка -->
<a href="http://www.mail.ru" target="_blank" title="Mail"><img src="http://javascript.ru/forum/images/smilies/victory.gif"></a><br>
</body>
</html>
 | 
	
		
 Feex, 
	придумать класс для картинки и заменить document.images[0] на document.querySelector('imgточкакласс')  | 
	
		
 
<!DOCTYPE html>
<html>
<head>
  <title></title>
<script language="JavaScript">
var img_href =['http://www.mail.ru','http://www.google.ru/','http://search.yahoo.com/'],
img_title = ['Mail','Google','Yahoo'],
i = 0,
img_a=new Array();
img_a[0]=new Image();
img_a[1]=new Image();
img_a[2]=new Image();
img_a[0].src="http://javascript.ru/forum/images/smilies/victory.gif";
img_a[1].src="http://javascript.ru/forum/images/smilies/dance3.gif";
img_a[2].src="http://javascript.ru/forum/images/smilies/agree.gif";
function img_b()   {
var n = i%3;
document.querySelector('img.rotator').src=img_a[n].src;
document.querySelector('img.rotator').parentNode.href=img_href[n];
document.querySelector('img.rotator').parentNode.title=img_title[n];
i++;
setTimeout("img_b()", 4000);
}
window.onload=img_b
</script>
</head>
<body>
<!-- моя картинка -->
<img src="http://www.flags.net/images/smallflags/RUSS0001.GIF" alt=""/><br>
<!-- моя картинка -->
<a href="http://www.mail.ru" target="_blank" title="Mail"><img class="rotator" src="http://javascript.ru/forum/images/smilies/victory.gif"></a><br>
</body>
</html>
вроде так, если я правильно понял. Моя картинка не задействуется теперь, но ротации смайлов нет.. Что я не так сделал?) P.S. Сорри!! Моя опечатка))) Вместо "=" я "+" поставил тут: "img class+"rotator" " В коде исправил уже - всё работает)) СПАСИБО!! Вы снова мне помогли))  | 
| Часовой пояс GMT +3, время: 09:06. |