使用jQuery更改悬停颜色(从数组)?

时间:2010-11-16 04:16:25

标签: jquery arrays random hover

我想知道是否可以使用jQuery在悬停时更改链接的颜色,从数组中随机获取颜色?我有以下但不知道如何抓取随机颜色..这可能是超级容易但我似乎无法解决..

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

6 个答案:

答案 0 :(得分:1)

尝试使用Math.random()并使用该值来获取数组索引。您可能还必须确保不会超出绑定数组。

答案 1 :(得分:1)

你去吧

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

还要确保你的js在$(文件).ready();

答案 2 :(得分:1)

为什么不尝试这样的事情:

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

答案 3 :(得分: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");
});

答案 4 :(得分:0)

您可以使用Math Javascript对象

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

答案 5 :(得分:0)

使用范围随机数函数〜

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