2010-12-21 14 views
0

Ich möchte ein zufälliges Bild und seine URL erstellen, ich meine nicht den Link des Bildes, aber zusätzlich zu Bild-Link, ich möchte die angegebene URL, so dass zufällige Bild angezeigt wurde und wenn Sie klicken Sie darauf, u an die angegebene URL gehenzufälliges Bild und seine URL

hier ist mein javascript:

function random_imglink(){ 
     var myimages=new Array() 
     //specify random images below. You can have as many as you wish 
     myimages[1]="/documents/templates/projedepo/banner/canon.jpg" 
     myimages[2]="/documents/templates/projedepo/banner/indigovision.jpg" 

     var ry=Math.floor(Math.random()*myimages.length) 

     if (ry==0) 
     ry=1 

    var randomImage = '<img src="'+myimages[ry]+'" height="420" width="964" />'; 
    document.getElementById("image2").innerHTML = randomImage; 
    } 
    random_imglink() 

hier mein HTML ist:

<div id="slider_container">  
<div id="image2"> 
</div> 
<div id="thumb2"> 
<a href="#" rel="/documents/templates/projedepo/banner/canon.jpg" class="image2" ><img title="Canon" class="slider_thumb" src="/documents/templates/bilgiteknolojileri/images/t_flash/t1.png" border="0"/></a> 
<a href="#" rel="/documents/templates/projedepo/banner/indigovision.jpg" class="image2"><img title="IndogoVision" class="slider_thumb" src="/documents/templates/bilgiteknolojileri/images/t_flash/t2.png" border="0"/></a> 
</div></div> 

Antwort

5

ich bin nicht ganz sicher, was Sie tun wollen, aber ich denke du willst ein erstellen einzelnes Bild, das auf eine URL verweist, die zufällig aus einer Liste von Bildern und entsprechenden URLs ausgewählt wird. Man könnte es wie folgt tun:

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; 
} 

ich [] hier bin mit einem Array zu erstellen, die 0 bei Index beginnt (siehe: http://www.hunlock.com/blogs/Mastering_Javascript_Arrays). Aus diesem Grund benötigen Sie den if (ry == 0) ry = 1; Teil nicht. Die Objekte in {} sind JavaScript-Objekte, die Sie als assoziative (Schlüssel/Wert-) Arrays verwenden können. Siehe auch http://www.quirksmode.org/js/associative.html.

Vielleicht wissen Sie bereits, all dies, in welchem ​​Fall bitte alles, was ich :)

EDIT sagte außer Acht lassen:

By the way, wenn Sie immer diese ein wenig schöner und es wird tun wollen sein, ein Bild und einen Link in Ihrem image2 div, könnten Sie alle nicht-dynamische Sachen in dem hTML-Code setzen:

<div id="image2"> 
    <a id="image2-link" href="#"><img id="image2-image" src="" height="420" width="964" /></a> 
</div> 

und dann

(...) 

    var randomImage = myimages[ry]; 

    document.getElementById("image2-link").href = randomImage.url; 
    document.getElementById("image2-image").src = randomImage.image; 
+0

danke dir! genau das wollte ich! –

+0

Yay. Du bist sehr willkommen. Glückliche Kodierung! –