@kodie/colorfield v0.1.0
colorfield
A tiny, dependency-free, color input field helper that utilizes the native color picker.
Demo
Visit https://kodie.github.io/colorfield
Installation
Manual Download
Download the latest version of colorfield and then place the following HTML in your page's head element:
<script type="text/javascript" src="dist/colorfield.min.js"></script>
<link rel="stylesheet" href="dist/colorfield.min.css" />
CDN (Courtesy of jsDelivr)
Place the following HTML in your page's head element (check to make sure the version in the URLs are the version you want):
<script type="text/javascript" src="https://cdn.jsdelivr.net/gh/kodie/colorfield@0.0.2/dist/colorfield.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/kodie/colorfield@0.0.2/dist/colorfield.min.css" />
NPM
npm install @kodie/colorfield --save
// ES6
import colorfield from '@kodie/colorfield'
// CommonJS
const colorfield = require('@kodie/colorfield')
GPM
gpm install kodie/colorfield --save
Bower
bower install kodie/colorfield --save
Usage
Basic HTML Structure
<div class="colorfield">
<input type="color" id="main-color" value="#5185b3">
<button type="button" class="colorfield-open colorfield-value" data-colorfield-style-prop="background-color"></button>
</div>
The colorfield
Function
Initiates colorfield on any element that has the colorfield
class. This should be a container around your color input.
Example
window.addEventListener('load', function () {
colorfield()
})
Attributes/Classes
The
colorfield-input
class - Any input element with this class will have it's value set to the selected color any time the color is changed. The color will also be set to any value that is entered into this input field.The
colorfield-open
class - Any element with this class will open the color picker when clicked.The
colorfield-value
class - Any element with this class will have it's text content set to the color when the color is changed. If this element is an input, it's value will be updated instead of text content.The
data-colorfield-style-prop
attribute - Set this attribute to a style property (likebackground
orcolor
) on an element to have it's style updated when the color is changed. Multiple style properties can be defined by separating them with a comma (ie.background,color
).
JavaScript Methods
The containing colorfield element (the element with the colorfield
class) will have the following methods attached to it available for use:
var color = document.querySelector('.color')
color.open() // Opens the color picker
color.set('#00ff00') // Sets the color
var currentColor = color.get() // Gets the current color
// The `change` event bubbles up to the containing element so you can detect changes like so:
color.addEventListener('change', function () {
document.body.style.setProperty('--color', event.target.value)
})
Related
minitaur - The ultimate, dependency-free, easy to use, JavaScript plugin for creating and managing modals.
filebokz - A tiny, dependency-free, highly customizable and configurable, easy to use file input with some pretty sweet features.
vanishing-fields - A dependency-free, easy to use, JavaScript plugin for hiding and showing fields.
License
MIT. See the license file for more info.