1

这是一个 json 对象的函数。canvas 参数是加载了图像的画布,而 canvasCtx 是画布的上下文。问题是当我移动滑块时,画布只被编辑一次,如果我再次移动它,什么也没有发生。但是,如果我添加我标记的字符串,一切正常。为什么?

EditBrightness : function(canvas, canvasCtx)
{
    var image = new Image(); // image that is used as default image for current operation       

    image.onload = function() {         

        var sliderLayout =  "<div header='Brightness'>" + 
                                "<span></span><br />" +
                                "<div></div>" +
                            "</div>";       

        var dialog = $(sliderLayout).dialog();

        $('div', dialog).slider({
            max : 150,
            min : -150,
            change : function (event, ui) {

                var canvas = $("#edit_canvas")[0];       // <-- Those are
                var canvasCtx = canvas.getContext('2d'); // <-- the strings

                $('span', dialog).html(ui.value);

                canvasCtx.drawImage(image, 0, 0);

                Pixastic.process(canvas, "brightness", {
                    brightness : ui.value
                });
            }
        });
    };

    image.src = canvas.toDataURL();
}
4

1 回答 1

0

可能是因为您在向我们展示的代码之外的某个地方更改了传递给此方法的变量canvascanvasCtx

于 2011-06-07T12:52:09.177 回答