jQuery Plugin For Animated Custom Checkboxes & Radio Buttons - checkBo
| File Size: | 12.6 KB |
|---|---|
| Views Total: | 6002 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
checkBo is a jQuery plugin to create cross-browser & cross-platform checkboxes, radio buttons, and toggle switches with animated check state powered by CSS3.
Advanced features:
- Allows you to check all checkboxes by one click.
- Allows to toggle any element based on the check state.
- 4 CSS class based size options: Default, Small, Medium, Large.
Basic Usage:
1. Include jQuery library together with checkBo.css and checkBo.js into the document.
<link href="/path/to/checkBo.css" rel="stylesheet"> <script src="/path/to/cdn/jquery.min.js"></script> <script src="/path/to/checkBo.js"></script>
2. Create custom checkboxes, radio buttons, and toggle switches as follows:
<label class="cb-checkbox">
<input type="checkbox" />
Checkbox
</label>
<label class="cb-radio">
<input type="radio" />
Radio Button
</label>
<div class="cb-switcher-group">
<span class="cb-state">OFF</span>
<div class="cb-switcher">
<label class="inner-switcher"><input type="checkbox"/></label>
</div>
<span class="cb-state">ON</span>
</div>
<div class="cb-switcher">
<label class="inner-switcher">
<input type="checkbox" data-state-on="ON" data-state-off="OFF"/>
</label>
<span class="cb-state">ON</span>
</div>
3. You can custom the size by adding a CSS helper into your label element:
- cb-sm: small
- cb-md: middle
- cb-lg: large
<label class="cb-checkbox cb-lg"> <input type="checkbox"> Checkbox </label>
3. Call the plugin on the parent element and done.
$(document).ready(function(){
$('form').checkBo();
});
4. Make a checkbox to check/uncheck all related checkboxes.
<label class="cb-checkbox" id="check-all">
<input type="checkbox" name="check-all" />
Check All
</label>
<div class="checkbox-row">
<label class="cb-checkbox">
<input type="checkbox" name="a" />
ABCD
</label>
</div>
<div class="checkbox-row">
<label class="cb-checkbox">
<input type="checkbox" name="b" />
EFGH
</label>
</div>
<div class="checkbox-row">
<label class="cb-checkbox">
<input type="checkbox" name="c" />
IJKL
</label>
</div>
$('form').checkBo({
checkAllButton:"#check-all",
checkAllTarget:".checkbox-row",
checkAllTextDefault:"Check All",
checkAllTextToggle:"Un-check All"
});
5. Toggle the visibility of specific elements based on the check state.
<!-- Show Elements -->
<label class="cb-radio" data-show="#SELECTOR">
<input type="radio" name="example" />
Show
</label>
<div class="is-hidden" id="SELECTOR">
Element To Toggle
</div>
<label class="cb-checkbox" data-show=".SELECTOR">
<input type="checkbox" name="example" />
Show
</label>
<div class="is-hidden SELECTOR">
Element To Toggle
</div>
<!-- Hide Elements -->
<label class="cb-radio" data-hide="#SELECTOR">
<input type="radio" name="example" />
Hide
</label>
<div id="SELECTOR">
Element To Toggle
</div>
<label class="cb-checkbox" data-hide=".SELECTOR">
<input type="checkbox" name="example" />
Hide
</label>
<div class="SELECTOR">
Element To Toggle
</div>
<!-- Toggle (Checkbox) -->
<label class="cb-checkbox" data-toggle="#SELECTOR1" data-hide=".SELECTOR2" data-show="#SELECTOR3">
<input type="checkbox" name="example" />
Toggle
</label>
<div id="SELECTOR1">
Element To Toggle
</div>
<div class="SELECTOR2">
Element To Toggle
</div>
<div class="is-hidden" id="SELECTOR3">
Element To Toggle
</div>
<label class="cb-checkbox" data-toggle="#X">
<input type="checkbox" name="example" />
Toggle
</label>
<div class="is-hidden" id="X"></div>
<label class="cb-checkbox" data-toggle="#XX">
<input type="checkbox" name="example" />
Toggle
</label>
<div id="XX">
Element To Toggle
</div>
<!-- Toggle (Radio Button) -->
<label class="cb-radio" data-show=".ONE" data-hide=".TWO,.THREE">
<input type="radio" name="radio-group" checked="checked"/>
Toggle
</label>
<label class="cb-radio" data-show=".TWO,.ONE" data-hide=".THREE">
<input type="radio" name="radio-group"/>
Toggle
</label>
<label class="cb-radio" data-show=".THREE" data-hide=".ONE">
<input type="radio" name="radio-group"/>
Toggle
</label>
<div class="ONE">
Element To Toggle
<div class="TWO is-hidden">
Element To Toggle
</div>
</div>
<div class="THREE is-hidden">
Element To Toggle
</div>
<!-- Toggle (Switch) -->
<div class="cb-switcher" data-toggle=".switch-toggle">
<label class="inner-switcher">
<input type="checkbox" checked data-state-on="Yes" data-state-off="No"/>
</label>
<span class="cb-state">Yes</span>
</div>
<div class="switch-toggle">
Element To Toggle
</div>
6. Change the check state manually.
$("form").prop('checked', true).change();
// OR
$('form').prop('checked', true).trigger('change');
Changelog:
v0.1.4 (2020-02-13)
- Added Switcher support
- Doc & Demo update accordingly.
v0.1.3 (2014-10-06)
- Improvements: Kill the bubbling on the click event ( link inside label ), Radio group toggle ( show hide ).
v0.1.2 (2014-10-06)
- fix radio buttons animation in Safari
- demo page update
v0.1.1 (2014-10-05)
- update
This awesome jQuery plugin is developed by elmahdim. For more Advanced Usages, please check the demo page or visit the official website.











