代码拉取完成,页面将自动刷新
同步操作将从 夕水/ew-color-picker 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
一个基于原生js而封装的颜色选择器插件。
npm install ew-color-picker --save-dev
<script src="./dist/ew-color-picker.min.js"></script>
颜色选择器插件如下:
//默认配置
var color = new ewColorPicker('.demo');
或 var color = new ewColorPicker(document.getElementByClassName('demo'));
//点击确定
color.config.sure = function(color){
//返回颜色值
}
//点击取消
color.config.clear = function(defaultColor){
//返回默认颜色值
}
// 当颜色值改变时触发
color.config.changeColor = function(color){
//返回改变后的颜色值,即color
}
//自定义配置
var color = new ewColorPicker({
el:'.demo2',//绑定选择器的dom元素
alpha:true,//是否开启透明度
hue:false,//是否开启色调
size:{
width:100,
height:50
},//颜色选择器类型,有四个字符串值normal,medium,small,mini或者一个对象自定义宽高,如果自定义宽高,最小宽高为25px
predefineColor:['#223456','rgba(122,35,77,.5)'],//预定义颜色是一个数组
disabled:false,//是否禁止所有的点击
defaultColor:'#eeff22',//默认颜色
pickerAnimation:'opacity',//或者'height',开启颜色选择器面板的动画
pickerAnimationTime:300,//动画执行时间,默认是200,最大动画时间为10000
sure:function(color){
console.log(color);
},//点击确定按钮的回调
clear:function(){
console.log(this)
},//点击清空按钮的回调
togglePicker:(el,flag,context) => {
console.log('当前根元素',el);
console.log('当前颜色选择器实例对象',context);
if(flag){
console.log("opened");
}else{
console.log("closed");
}
},//点击色块事件回调,需要注意该事件触发必须要将hasBox设置为true
isLog:false, //是否开启打印信息,默认是true如果不指定该值的话
changeColor:(color) => {
console.log('颜色值改变时触发:',color);
},
hasBox:true //默认为true,或者为false,表示是否显示颜色选择器
isClickOutside:true, //默认为true,或者设置为false,表示是否允许点击颜色选择器区域之外关闭颜色选择器
hasClear:true,//是否显示清空按钮,默认为true
hasSure:true, //是否显示确定按钮,默认为true,不建议设置为false
hasColorInput:true, //是否显示输入框,默认为true,不建议设置为false
boxDisabled:true,//默认是false,设置为true并且hasBox为true,禁止点击色块打开颜色选择器
openChangeColorMode:true,//是否打开颜色切换模式,注意打开这个模式必须要将alpha和hue设置为true
hueDirection:"horizontal",//或者vertical,默认是垂直布局显示,表示hue色阶柱是水平还是垂直布局显示
alphaDirection:"horizontal",//或者vertical,默认是垂直布局显示,表示透明度柱是水平还是垂直布局显示
lang:"zh",//或en,表示启用中文模式还是英文模式
clearText:"清空",//清空按钮文本,如果想要自定义该值,需要设置userDefineText为true
sureText:"确定",//确定按钮文本,如果想要自定义该值,则需要设置userDefineText为true
userDefineText:false,//默认为false,设置为true之后,lang属性的切换将无效
})
//如果不喜欢实例化的方式来创建一个颜色选择器,也可以使用createColorPicker方法
ewColorPicker.createColorPicker(config);//config为属性配置对象
//当然还提供了一个api,可以获取默认的配置对象
ewColorPicker.getDefaultConfig();
//实例化的颜色选择器类,我们还提供了三个api,如下:
color.openPicker(pickerAnimation,time);//手动打开颜色选择器,参数为动画类型,即height或opacity
color.closePicker(pickerAnimation,time);//手动关闭颜色选择器,参数同手动打开方法一样
color.updateColor(color);//手动更新颜色值,参数为颜色值,不合格的颜色值会给出错误提示,并且颜色选择器面板要处于开启状态
//样式引入 CDN:https://www.unpkg.com/ew-color-picker/dist/ew-color-picker.min.css CDN:https://www.unpkg.com/ew-color-picker/dist/ew-color-picker.min.js
import ewColorPicker from 'ewColorPicker';
import "ew-color-picker/dist/ew-color-picker.min.css"
import "ew-color-picker/src/style/ew-color-picker.css"
var pluginName = new ewColorPicker(option);//option为配置对象,详情见前述
tips: 需要注意的是,从1.6.4版本开始,如果传入的dom元素是多个,则只有第一个dom元素渲染成颜色选择器,如果需要渲染多个颜色选择器,可使用一个数组来实例化。例如:
let els = document.querySelectorAll('.demo');
els.forEach(item => {
new ewColorPicker(item);
//或new ewColorPicker({
// el:item,
// }) //以及一些相关配置属性
})
更多详情参阅文档官网介绍ewColorPicker;
国内访问速度慢可访问ewColorPicker
$
工具方法,增加了$$
工具方法。destroy
。destroy
。lang
语言配置属性,新增了clearText
与sureText
属性,用于自定义清空按钮和确定按钮的文本,新增了userDefineText
属性,用于开启用户自定义清空按钮和确定按钮的文本,如果不开启该属性,那么手动设置clearText
与sureText
属性值无效,如果开启了该值,则语言模式失效。openAndClosePicker
配置对象属性方法名更改为togglePicker
,修改了togglePicker的返回参数。pickerAnimationTime
属性,表示执行动画的时间,当然不建议将时间设置的过长,优化了一些代码。hueDirection
和alphaDirection
属性。openPickerAni
配置属性名更改为pickerAnimation
。ewColorPicker.util
访问到所有工具方法,并修改了颜色值的验证,支持英文颜色单词的传入,例如设置预定义颜色以及默认颜色。openPicker
点击色块打开或关闭的回调更名为openOrClosePicker
,优化了代码。changeBoxByChangeColor
配置属性,该属性表示是否在打开颜色面板,颜色值触发的时候,色块的背景色更改,如果不点击确定按钮,关闭颜色面板后会恢复到默认颜色,预定义颜色数组predefineColor
新增了可以传数组项为对象或字符串,对象定义为{ color:"#123",disabled:true }(color为合格的颜色值,disabled为true或者false,表示是否禁用该预定义点击更换颜色)
。boxDisabled
和openChangeColorMode
配置属性。body
中,但会生成一个容器元素来包含,将disabled
配置属性更改成了全部禁止点击。此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。