jQuery - 使用onChange对类进行独特控制

时间:2010-09-13 15:42:02

标签: jquery color-picker

我在应用上使用jQuery colorpicker。选择并选择颜色后,颜色将显示在范围类“.swatch”中。但是,如果单个页面上有两个颜色选择选项,则span.swatch将显示与选择颜色相同的颜色。 (见截图)。

屏幕截图:http://cl.ly/2MUU

这是我正在使用的代码

jQuery('.colorselect').ColorPicker({
    onSubmit: function ( hsb, hex, rgb, el ) {
        jQuery(el).val(hex);
        jQuery(el).ColorPickerHide();
    },
    onBeforeShow: function () {
        jQuery(this).ColorPickerSetColor(this.value);
    },
    onChange: function (hsb, hex, rgb) {
        jQuery('.swatch').css('backgroundColor', '#' + hex);
    }
})

2 个答案:

答案 0 :(得分:3)

试试这个

$.each($('.colorselect'),function(){
    var $target = $(this);
    $(this).ColorPicker({
            onSubmit: function ( hsb, hex, rgb, el ) {
                           jQuery(el).val(hex);
                           jQuery(el).ColorPickerHide();
            },
            onBeforeShow: function () {
                     jQuery(this).ColorPickerSetColor(this.value);
            },
            onChange: function (hsb, hex, rgb) {
                     $target.find('.swatch').css('backgroundColor', '#'+hex);
            }
    });
});

答案 1 :(得分:0)

onChange: function (hsb, hex, rgb) { 
        jQuery(this).find('.swatch').css('backgroundColor', '#' + hex); 
    }

这应该有效 - 尽管我自己也没试过。