2013-03-31 14 views
5

io so questa risposta è qui, ma sono stato in grado di trovare (o almeno riconoscere che quando l'ho visto!). Sono un noob imparziale di jquery, quindi abbi pazienza con me.Come faccio ad aggiungere una variabile javascript per tag HTML immagine src

Problema:

ho 20 immagini, denominate 1.png attraverso 20.png. Vorrei un'immagine diversa da visualizzare casualmente ogni volta che un utente fa clic su un pulsante.

di Cosa di lavoro:

Il mio codice JavaScript per generare il numero casuale è simile al seguente:

var randomImage = 1 + Math.floor(Math.random() * 20); 

cosa non lo è ...

Quello che sto cercando di fare è passare il risultato di che al mio documento HTML come il nome dell'immagine, in modo che si legge qualcosa di simile:

<img id="randImg" class="img_answer" src="randomImage.png"> 

Ho provato a concatenare, ma non riesco a capirlo. Devo creare una funzione che influenzi l'ID o la classe img? Qualcuno può indicarmi il modo più pulito per farlo?

+1

Ecco _Javascript_, non è jQuery. – SLaks

+0

Come sottolinea @SLaks, Javascript è la lingua che gira sui browser in generale. jQuery è una libreria che rende più facile fare alcune cose in Javascript. Generalmente se vedi $ ('qualcosa qui'), questo è jQuery - il resto è Javascript. –

risposta

9
var randomImage = 1 + Math.floor(Math.random() * 20);  
var imgName = randomImage+".png"; 
$("#randImg").attr("src",imgName); 

Demo: http://jsfiddle.net/a9Ltw/

+0

Pochi secondi più veloci ...: D – Lemurr

+0

Non molto, ma è più semplice. – Mooseman

+0

Grazie Mooseman e tutti quelli che hanno aiutato.Mooseman, il tuo codice jsfiddle funziona come un fascino su jsfiddle, ma ho qualcos'altro che causa un problema. Nessun errore della console e il nuovo percorso dell'immagine corretto lampeggia brevemente nella console, tuttavia l'immagine non cambia mai sul mio sito. Ho più cose da imparare prima di chiedere più aiuto, ma volevo ringraziare tutti coloro che hanno suonato. Cheers, Cliff – Cliff

1

Basta aggiungere qualche immagine di default per img tag per impedire la visualizzazione di nulla se l'utente ha disattivato JavaScript, e poi in jQuery utilizzare $("#randImg").attr("src", randomImage + ".png");

4

ortografia fuori un po 'per contribuire ad insegnare :

Nella pagina che avresti avuto qualcosa di simile:

<img id=randomImage /> 

E probabilmente in testa per nascondere l'immagine fino a quando hai scelto uno di caricare, questo:

<style> 
#randomImage { 
    width: 400px; height: 200px; /* or whatever the dimensions are */ 
    visibility: hidden; 
} 
</style> 

Poi, nel tuo Javascript:

var ordinal = 1 + Math.floor(Math.random() * 20); 
$('#randomImage').css('visibility', 'visible').attr('src', ordinal + '.png'); 

Quindi il codice HTML stabilisce il tag img e alcuni dei primi CSS impostano le sue dimensioni e lo nascondono in modo che non ci siano brutte icone di immagini rotte ecc. in alcuni browser - solo uno spazio vuoto.

Quindi, infine, il Javascript viene caricato e eseguito, determinando un ordinale casuale. La seconda riga di Javascript chiama jquery per rendere visibile img e imposta l'attributo src sull'immagine casuale.

2
$(document).ready(function() { 
    var randomImage = 1 + Math.floor(Math.random() * 20),  
       img = randomImage + ".png"; 

    $("#randImg").attr("src", img); 
}); 
0
var thesoruce = "http://localhost:8080/content/dam/admin/" + id ; 

g_fb.find('p').append('<img src= '+thesoruce +' height="250px" width="600px">'); 
Problemi correlati