2009-09-29 45 views
0

你可以在下一页看到的是一些随机顺序的用户名列表。我想使用jQuery他们在这个顺序进行排序:jquery根据css(“color”)对dom元素进行排序

红色 蓝色 绿色 紫色 黑

http://www.arvag.net/test/sorting/

这是我做过什么至今:

<script type="text/javascript"> 
$(function() { 
    var admin  = "rgb(255, 0, 0)"; 
    var moderator = "rgb(00, 00, 255)"; 
    var text  = "rgb(00, 128, 00)"; 
    var vip   = "rgb(128, 00, 128)"; 

    var adminBuffer = []; 
    var moderatorBuffer = []; 
    var textBuffer = []; 
    var vipBuffer = []; 
    var html; 

    $("div#active_users span.name").each(function(i) { 
     color = $("a span",this).css("color"); 
     html = $(this).html(); 
     if(admin == color){ 
      adminBuffer[i] = "<span class='name'>" + html + "</span>"; 
     } 
     //$(this).clone().append("&nbsp").appendTo('#rezultat'); 
    }); 
    jQuery.each(adminBuffer, function() { 
     //alert(this); 
     $(this).appendTo("#rezultat"); 
    }); 
}); 
</script> 

我设法得到一个红色的匹配,但即时通讯只是无法将其追加到另一个ID为“rezultat”的元素。

任何想法或消化是值得欢迎的!

+3

似乎有点内向外。我会让用户分类(管理员,主持人等),然后按类进行排序。 (类似的问题)。然后应用正确的CSS来获得正确的颜色。 – 2009-09-29 20:54:47

+0

嗯好主意!我会试试这个! – Gavrisimo 2009-09-29 21:20:58

回答

1

嗯,我添加的类(管理员,版主等),以我的元素,现在它很容易...;)所以感谢clintp的想法... :)

0

TinySort是子节点进行排序插件(子)内容或属性。对订购无序列表或表格非常有用,但适用于任何类型的节点。

相关问题