修改jQuery UI colorpicker滑块以包含黑白值

时间:2013-06-15 16:18:30

标签: jquery jquery-ui canvas colors html5-canvas

我目前正在使用jQuery UI颜色选择器滑块see fiddle here的修改版本。我想知道是否有一种简单的方法来欺骗它,这样当它的值为0时,颜色实际上是黑色的(#000,hsl(0,0%,0%)),当它达到最大值时360它将变为白色(#fff,hsl(360,100%,100%))。我不是js专业人士,但我正在思考...... ...

slide: function(event, ui) {
    if (ui.value = 0) $('#box').attr('data-color', 'hsl(' + ui.value + ', 0%, 0%)');
    box.style.background = 'hsl(' + ui.value + ', 100%, 50%)';
    var clr = $('#box').css('background-color');
    $('#box').attr('data-color', clr).trigger('click');
    $('#slider-handle').css('background-color', clr);
}

但这不起作用

1 个答案:

答案 0 :(得分:0)

想出来:

    $("#slider-horiz").slider({
    orientation: "horizontal",
    min: 0,
    max: 360,
    value: 0,
    slide: function (event, ui) {
        box.style.background = 'hsl(' + ui.value + ', 100%, 50%)';
        var clr = $('#box').css('background-color');
        $('#box').attr('data-color', clr).trigger('click');
        if (ui.value == 0) {
            $('#box').attr('data-color', 'hsl(' + ui.value + ', 0%, 0%)').trigger('click');
            $('#slider-handle').css('background-color', '#000');
        }
        if (ui.value == 360) {
            $('#box').attr('data-color', 'hsl(' + ui.value + ', 100%, 100%)').trigger('click');
            $('#slider-handle').css('background-color', '#fff');
        }


    }
});

});