Я не совсем уверен, что вы хотите сделать, но я думаю, что вы хотите создать одно изображение, которое ссылается на URL-адрес, выбранный случайным образом из списка изображений и соответствующих URL-адресов.Вы можете сделать это так:
function random_imglink() {
var myimages = [
{image: "/documents/templates/projedepo/banner/canon.jpg", url: "http://www.url1.com"},
{image: "/documents/templates/projedepo/banner/indigovision.jpg", url: "http://www.url2.com"}
];
var ry=Math.floor(Math.random()*myimages.length);
var randomImage = myimages[ry];
var randomImageLink = '<a href="' + randomImage.url + '"><img src="'+randomImage.image+'" height="420" width="964" /></a>';
document.getElementById("image2").innerHTML = randomImageLink;
}
Я использую []
здесь для создания массива, который начинается с индекса 0 (см .: http://www.hunlock.com/blogs/Mastering_Javascript_Arrays). Из-за этого вы нене требуется if (ry == 0) ry = 1;
часть. В {}
есть объекты javascript, которые вы можете использовать в качестве ассоциативных (key-value) массивов.об этом, в этом случае, пожалуйста, не обращайте внимания на все, что я сказал:)
РЕДАКТИРОВАТЬ:
Кстати, если вы хотите сделать это немного лучше, и всегда будет изображение иссылка в вашем image2
div, вы можете поместить все нединамические вещи в HTML:
<div id="image2">
<a id="image2-link" href="#"><img id="image2-image" src="" height="420" width="964" /></a>
</div>
, а затем
(...)
var randomImage = myimages[ry];
document.getElementById("image2-link").href = randomImage.url;
document.getElementById("image2-image").src = randomImage.image;