Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery plugins eyecon Colorpicker-单击事件中颜色未更改_Jquery Plugins_Click_Color Picker - Fatal编程技术网

Jquery plugins eyecon Colorpicker-单击事件中颜色未更改

Jquery plugins eyecon Colorpicker-单击事件中颜色未更改,jquery-plugins,click,color-picker,Jquery Plugins,Click,Color Picker,我使用的是基于jquery的eyeCon颜色选择器(http://www.eyecon.ro/colorpicker/) 当我在彩色区域上单击并拖动鼠标时,颜色正在改变。但当我只点击彩色区域时,颜色并没有得到更新 我挖掘了它的源代码,发现mousedown和mousemove分别调用了两个名为downSelector()和moveSelector()的函数。我刚刚在downSelector()函数上添加了对moveSelector()的调用,该函数传递自己的ev对象。但它不起作用,并抛出以下错误

我使用的是基于jquery的eyeCon颜色选择器(http://www.eyecon.ro/colorpicker/)

当我在彩色区域上单击并拖动鼠标时,颜色正在改变。但当我只点击彩色区域时,颜色并没有得到更新

我挖掘了它的源代码,发现mousedown和mousemove分别调用了两个名为downSelector()和moveSelector()的函数。我刚刚在downSelector()函数上添加了对moveSelector()的调用,该函数传递自己的ev对象。但它不起作用,并抛出以下错误: 未捕获的TypeError:无法读取未定义的属性“cal”

这可能是因为mousedown和mousemove的ev对象不同

但我需要更新mousedown事件的颜色。有什么建议吗


提前感谢:)

在colorpicker.js中,您可以从
upSelector
调用
moveSelector
,如下所示:

moveSelector = function (ev) {
  change.apply(
  ev.data.cal.data('colorpicker').fields.eq(6)
    .val(parseInt(100*(150 - Math.max(0,Math.min(150,(ev.pageY - ev.data.pos.top))))/150, 10))
    .end().eq(5).val(parseInt(100*(Math.max(0,Math.min(150,(ev.pageX - ev.data.pos.left))))/150, 10))
    .get(0),[ev.data.preview]
  );
  return false;
},

upSelector = function (ev) {

  moveSelector(ev);

  fillRGBFields(ev.data.cal.data('colorpicker').color, ev.data.cal.get(0));
  fillHexFields(ev.data.cal.data('colorpicker').color, ev.data.cal.get(0));
  $(document).unbind('mouseup', upSelector);
  $(document).unbind('mousemove', moveSelector);
  return false;
}, 

这个小技巧效果很好:)

实际上,只需从
upSelector()中调用
moveSelector(ev)
函数就可以了。
工作正常,不需要复制粘贴整个代码,对于色调变换器,调用moveHue(ev);在功能上是上色的。