2012-03-25 98 views
1

我有4个项目,我想给每个链接分配4个不同的背景颜色,但我不想让颜色随机化..让我们说如果我有这个结构jQuery将颜色分配给李列表

<div id="div_id"> 
<ul> 
    <li><a href="#">Home</a></li> 
    <li><a href="#">About Us</a></li> 
    <li><a href="#">Contact Us</a></li> 
    <li><a href="#">More Info</a></li> 
</ul> 
</div> 

这怎么可能?

我有颜色列表。他们是(绿色,蓝色,红色,黑色)

我试图

$("#div_id ul li").each(function() { 
$(this).css("background","green"); 
}); 

说实话,我不知道我会如何应用这些颜色。我可以将它们存储在数组中,但我将如何循环和分配颜色?

+4

如果不提供任何代码,人们假设你没有尝试过任何东西。如果你还没有尝试过任何东西,我们假设你不知道JavaScript。如果你不知道JavaScript,你不应该使用jQuery。另外,如果你不希望颜色是随机的,你希望他们是什么? – mowwwalker 2012-03-25 20:19:51

+2

您提供的要求非常之少,我不明白为什么'style ='background-color:#XXXXXX;''不会削减它。 – Diego 2012-03-25 20:21:12

回答

3
​$(document).ready(function(){ 
    var color=['red','green','blue','yellow']; 
    $('#div_id ul li').each(function(i){ 
     $(this).css('backgroundColor',color[i]); 
    }); 
});​ 

甲小提琴是here

当你要求通过悬停应用光色在每个项目上悬停的效果,我给你两个例子 http://jsfiddle.net/NjqYA/2/2.http://jsfiddle.net/NjqYA/4/

+0

这对我有用,现在我将如何在它上面悬停?像悬停一样,第一个元素的颜色变成浅红色,第二个变成浅绿色等等? – Grigor 2012-03-25 20:48:38

+0

试试这个http://jsfiddle.net/NjqYA/2/或这个http://jsfiddle.net/NjqYA/4/ – 2012-03-25 21:17:27

2

如果你不想一类或ID分配给每个单独的<li>的,那么你可以使用第n个孩子选择像这样:

$("#div_id li:nth-child(1)").css({"background-color":"red"}); 
$("#div_id li:nth-child(2)").css({"background-color":"green"}); 
$("#div_id li:nth-child(3)").css({"background-color":"blue"}); 
$("#div_id li:nth-child(4)").css({"background-color":"yellow"});