Я пытаюсь щелкнуть холст (с линейным градиентом) и получить данные изображения в точке щелчка.
Также я хочу разместить относительный желтый (выборщик) в этой точке (щелкнуть)
Проблема 1: Когда я нажимаю на нижнюю часть (белую), это дает мне неправильное значение цвета.
Проблема 2: желтый (выборщик) не расположен точно в точке щелчка
Примечание. Холст выглядит круглым из-за радиуса границы: 50%
Важная часть кода, указанная в (выше ссылки на скрипку),
$(wheel_canvas).click(function(e)
{
dragging = false;
x = e.pageX;
y = e.pageY;
can_p = $('#wheel_canvas').offset();
x = x - $(document).scrollLeft() - can_p.left;
x = y - $(document).scrollTop() - can_p.top;
$('#wheel_picker').css({'left':x+'px','top':y+'px'});
var data=wheel_context.getImageData(x,y,1,1).data;
pixelData = data;
rgbString = 'rgb('+pixelData[0]+', '+pixelData[1]+', '+pixelData[2]+')';
hex = rgb2hex(rgbString);
$('#color').val(hex);
$('#color').css('background',hex);
$('#feedback').html("Coordinates : "+x+","+y+" Color: "+hex);
});
Изменить Ответ, включая скрипку, был бы лучше :)