【问题标题】:Using multiple colors for highlighting使用多种颜色突出显示
【发布时间】:2015-06-03 01:47:53
【问题描述】:

我有这个示例代码来突出显示表格的特定单元格。有没有办法切换颜色或同时使用多种颜色?

我需要在这里实现两件事。 1)我希望能够在单击之前将参数组(或单独的参数)的颜色设置为前端的某种颜色。最多5种颜色就足够了。 2)参数去哪个颜色并不重要。颜色可以随机分配。我重新编辑了这个问题以使其更清楚。

这是该项目的小提琴页面:http://jsfiddle.net/max33/kjcyu3yb/

$('.selector').each(function() {
    $(this).on('click', check); 
});
    $('.all').each(function() {
       $(this).on('click', all); 
    });

function all(event) {
    
        if($(this).is(':checked')){  $("input:checkbox:not(:checked)",$(this).parents('form')).not(this).prop("checked","checked");
    } else {
        $("input:checkbox(:checked)",$(this).parents('form')).not(this).prop("checked","");
    }
    
    //$('.selector').prop("checked", this.name === "SelectAll");
    
    check(event);
}

function check(event) {
    var checked = $(".selector:checked").map(function () {
        return this.name
    }).get()
    $('td').removeClass("highlight").filter(function () {
        return $.inArray($(this).text(), checked) >= 0
    }).addClass("highlight")
    if ($(this).is(".selector"))
        $('.all').not(this).prop("checked", false)

}



 

 

【问题讨论】:

  • 我非常感谢专家的建议,这是否可行,如果可以的话,任何指导都将受到欢迎。谢谢。
  • 您的具体要求是什么?对不起,我没有正确理解您,因此要求提供更多详细信息
  • 感谢您的提问。如果您检查了小提琴页面,当您单击左侧的参数时,它会以绿色突出显示,这也适用于其他参数。我希望能够以不同的颜色突出显示,有些是绿色的,有些是蓝色的,等等。可以这样做吗?基本上,我想要一个能够同时在表格上以不同颜色突出显示参数的选项。
  • 是的,您可以这样做。请看下面我的回答。这是您的小提琴的修改版本。希望你能从中得到一个想法。

标签: jquery highlight


【解决方案1】:

您可以为每个表单元素使用不同的类。就像我对 x 使用了 highlight-x 一样。然后在为所有选定元素添加通用highlight 类之后,我为X 添加额外类。您可以使用不带参数的removeClass 一次删除所有类。它将删除所有项目的类。检查this fiddle。从第一个表单中选择所有。您将看到所有X 都使用red 突出显示。如果这不符合您的要求,请告诉我。

【讨论】:

  • 我试过你的小提琴,但看起来一样。可能你和我分享了错误的小提琴?
  • 谢谢,临空。是的,这很有效,我可以为某些元素定义某些颜色。但是考虑到这是一个简短的示例代码,当我们将参数的数量增加到数百个时,处理所有参数将非常困难。并且不可能进行颜色切换。 “X”总是红色的。如果不更改代码,我将无法再次将其变为绿色。
猜你喜欢
  • 2013-07-17
  • 1970-01-01
  • 2020-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多