2010-11-16 19 views
0

Je me demandais s'il était possible d'utiliser jQuery pour changer la couleur d'un lien en survolant, obtenant la couleur aléatoirement d'un tableau? Je les éléments suivants, mais ne savez pas comment saisir la couleur aléatoire .. Cela pourrait être super facile, mais je ne peux pas sembler travailler dehors ..Utilisation de jQuery pour modifier la couleur du survol (à partir d'un tableau)?

var colors = Array("#fb2900", "#ff7800", "#fff43b", "#8dfa30", "#01c86a", "#00d7b2", "#0092e3", "#002f7e", "#390e73"); 
$("ul.menu li a").hover(function(){ 
    $(this).css("color","#f0f"); //random colour would be going here 
}, function() { 
    $(this).css("color","#ffffff"); 
}); 

Répondre

1

Pourquoi ne pas essayer quelque chose comme:

var colors = Array("#fb2900", "#ff7800", "#fff43b", "#8dfa30", "#01c86a", "#00d7b2", "#0092e3", "#002f7e", "#390e73"), idx; 
$("ul.menu li a").hover(function(){ 
    idx = Math.floor(Math.random() * colors.length); // Pick random index 
    $(this).css("color", colors[idx]); 
}, function() { 
    $(this).css("color","#ffffff"); 
}); 
1

Essayez Math.random() et utiliser cette valeur aller chercher un tableau index.vous pourriez aussi devoir vous assurer que vous n'accédez pas à un tableau hors limite.

1

Ici, vous allez

$(this).css("color",colors[Math.floor(Math.random() * colors.length)]); 

Assurez-vous également que votre js est dans un $ (document) .ready();

1
var colors = ["#fb2900", "#ff7800", "#fff43b", "#8dfa30", "#01c86a", "#00d7b2", "#0092e3", "#002f7e", "#390e73"]; 
$("ul.menu li a").hover(function(){ 
    var color = colors[Math.floor(Math.random() * colors.length)]; 
    $(this).css("color",color); //random colour would be going here 
}, function() { 
    $(this).css("color","#ffffff"); 
}); 
+0

On dirait que nous avions modèles de pensée très similaires sur celui-ci. –

0

Vous pouvez utiliser le Math Javascript Object

var random_number = Math.floor(Math.random()*9) 
var random_color = Array[random_number] 
$(this).css("color","random_color); 
0

utilisation Plage fonction de nombres aléatoires ~

function GetRangeRandom(min, max) 
{ 
    return (Math.floor((max-min-1)*Math.random()) + min); 
}