Как сделать картинки вместе с ссылками?

<script language="JavaScript">
<!--
var a=Math.round(Math.random()*2)
image = new Array();
image[0]="http://example/templates/skin/skinname/images/1.png"
image[1]="http://example/templates/skin/skinname/images/2.png"
image[2]="http://example/templates/skin/skinname/images/3.png"
document.write ("<img src="+image[a]+">");
//-->
</script>


Этот скрипт выводит рандомно изображения (но Вы это и так знаете).

Как привязать к определенной картинке определенную ссылку?)
  • Вопрос задан
  • 2478 просмотров
Пригласить эксперта
Ответы на вопрос 2
borNfree
@borNfree
PHP developer
Вам надо к определенному тегу img привязать определенную ссылку из приведенного массива?
Если это будут новые теги img, то не понимаю в чем проблема, если же вы хотите привязать к уже существующему тегу img какую то ссылку, то надо найти его сначала в DOM, а потом изменить.

Делаете у тега img атрибут, например id
<img id="logo" [.......] />

Ну и изменяете атрибут src с нужной вам ссылкой, найдя предварительно тег сам элемент картинки на странице
document.getElementById("logo").src = 'http://.......'
Ответ написан
Комментировать
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Ну, во первых, частота выпадения второй картинки будет в два раза выше, чем первой и третьей (0 - [0; 0.5), 1 - [0.5; 1.5), 2 - [1.5; 2)). Для равномерного распределения используется формула Math.floor(Math.random()*N). Для того, чтобы картинка была ссылкой достаточно обернуть её в тэг <a>. В целом, лучше записать так:
var images = [['http://example/templates/skin/skinname/images/1.png', '#href1'],
              ['http://example/templates/skin/skinname/images/2.png', '#href2'],
              ['http://example/templates/skin/skinname/images/3.png', '#href3']];
var a = Math.floor(Math.random()*images.length);
document.write('<a href="'+images[a][1]+'"><img src="'+images[a][0]+'"></a>');
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы