2015-07-12 75 views
1

我想要点击我的颜色选择器的颜色之一:http://prntscr.com/7rnafa所选颜色在目标项目上发生变化。jQuery:我如何制作预定义的颜色选择器?

我开始编码我的代码的开始,但其余的我需要帮助。

jQuery的

$(function() { 
    $(".colorPickerToggleButton").on("click", function(e) { 
     $(".colorPickerToggleButton").toggleClass("active"); 
    }); 
    $('.colorPickerToggleButton').toggle(function() { 
     $(".colorPicker").addClass("shown"); 
    }); 

    var color_elements_background = ".nodeList .categoryStrip"; 

    var color_elements_text = "a:link, a:visited"; 

    $(".colorPicker span").on("click", function() { 
     var customColor = $(this).attr("custom_color"); 
    }); 
}); 

我想吃点什么确切地说,它是例如如果我点击我的颜色选择器的颜色之一,单击颜色应用于针对性的元素。例如:http://prntscr.com/7rncra

谢谢。

回答

1

尝试修改现有的功能,看起来像这样:

$(".colorPicker span").on("click", function() { 
    var customColor = $(this).attr("custom_color"); 
    $(color_elements_background).css("background-color", customColor); 
    $(color_elements_text).css("color", customColor); 
}); 

这将设置使用jQuery您的目标元素的CSS颜色。

它的工作方式是将查询字符串直接传递给jQuery,并让它完成选择元素的繁重工作。然后它使用jQuery .css function将CSS样式应用于这些元素。

+0

嗨,谢谢。是的,但我需要针对我的变种中的元素:http://prntscr.com/7rnftq –

+0

@ Uptop14这就是主意。 jQuery通过传入一个字符串来选择元素。因此,例如,当您将字符串“a:link,a:visited”传递给jQuery(通过传递变量color_elements_text)时,它将对匹配该查询字符串的元素进行操作。通常,人们将字符串作为文字传递给jQuery,但您也可以通过变量传递它们。这就是我在这里所做的。编辑:由于JavaScript关闭如何工作,该变量应该可以从点击功能内访问,如果这是你的问题的一部分! –

+0

好的。但如果我有多种颜色,我该怎么办?我如何使用它? http://prntscr.com/7rnjcu –