Parts Selector
A design pattern, and jQuery plugin for choosing items from a list.
Demos
Use
Include jQuery
, parts-selector.css
and parts-selector.js
.
Markup:
<div class="parts-selector" id="my-parts-selector"> <div class="parts list"> <h3 class="list-heading">Available items</h3> <ul> <li> Nut </li> <li> Bolt </li> </ul> </div> <div class="controls"> <a class="moveto selected"><span class="icon"></span><span class="text">Add</span></a> <a class="moveto parts"><span class="icon"></span><span class="text">Remove</span></a> </div> <div class="selected list"> <h3 class="list-heading">Chosen items</h3> <ul> </ul> </div> </div>
Initialise:
$( "#my-parts-selector" ).partsSelector();
Options
added
: Message displayed when an item is moved to "selected" list. (Default:Item added
)removed
: Message displayed when an item is moved to "parts" list. (Default:Item removed
)noneSelected
: Message displayed when controls are clicked, but nothing is selected. (Default:Click on items below to select them
)itemButtons
: Boolean, to enable inline buttons. (Default:false
)callback
: Function called after an item is moved. (See below)
Example
$( "#my-parts-selector" ).partsSelector({ itemButtons: true, callback: function() { // do something } });
Dev
There are a few dependencies, so do npm install
.
grunt
will watch for changes to your SCSS and JS files.