kist-selectdown
Select with customizable menu.
Installation
npm install kist-selectdown --save bower install kist-selectdown --save
API
$Element.selectdown(options)
Returns: jQuery
options
Type: Object|String
Object
Options defined as classes
Type: Object
Classes for elements.
Default value:
wrapper: 'kist-Selectdown' originalSelect: 'kist-Selectdown-originalSelect' select: 'kist-Selectdown-select' optionList: 'kist-Selectdown-optionList' optionItem: 'kist-Selectdown-optionItem' option: 'kist-Selectdown-option' isActive: 'is-active' isHidden: 'is-hidden' isFocused: 'is-focused'
templates
Type: Object
Template generating functions for custom markup.
Available values are:
Name | Arguments | Description |
---|---|---|
select |
data |
Template for select element. |
option |
data |
Template for option element. |
create
Type: Function
Arguments: [Select element, Custom select element]
Event: selectdowncreate
Callback to run on select menu creation (when DOM elements are ready).
open
Type: Function
Arguments: [Select element, Custom select element]
Event: selectdownopen
Callback to run when select menu is opened.
close
Type: Function
Arguments: [Select element, Custom select element]
Event: selectdownclose
Callback to run when select menu is closed.
select
Type: Function
Arguments: [Current replaced item, Current item value, Original option item]
Event: selectdownselect
Callback to run on option select.
String
Options defined as Type: String
destroy
Destroy plugin instance.
refresh
Refresh select menu (e.g. when changing content with html
, append
, …)
Examples
Default structure for select menu.
Option 1 Option 2 Option 3
Standard set of options.
;
Basic template support.
;
Callback on item select.
;
Refresh plugin instance.
;
Destroy plugin instance.
;
Testing
Currently, only manual tests are available.
Run npm test -- --watch
and open http://0.0.0.0:8000/compiled/test/manual/ in your browser.
Browser support
Tested in IE8+ and all modern browsers.
License
MIT © Ivan Nikolić