1 回答

TA贡献1797条经验 获得超6个赞
您需要$('#canvas_picker').mousemove(function(event){改为使用。
但是您还需要监听 mousedown 和 mouseup 事件,以仅允许该函数在按住鼠标时运行。是这样的:
function pickColour(element) {
var x = event.pageX - element.offsetLeft;
var y = event.pageY - element.offsetTop;
var img_data = canvas.getImageData(x, y, 1, 1).data;
var R = img_data[0];
var G = img_data[1];
var B = img_data[2];
var rgb = 'rgb(' + R + ', ' + G + ', ' + B + ')';
var hex = rgbToHex(R,G,B);
$('#rgb input').val(rgb);
$('#hex input').val('#' + hex);
colorLabel.style.backgroundColor = '#' + hex;
}
var canPick = false
$('#canvas_picker').mousedown(function(){
canPick = true
});
$('#canvas_picker').mouseup(function(){
canPick = false
});
$('#canvas_picker').mouseleave(function(){
canPick = false
});
$('#canvas_picker').on('mousemove', function() {
if(canPick) {
pickColour(this);
}
})
添加回答
举报