GithubHelp home page GithubHelp logo

checkbo's Introduction

This repository is no longer maintained.

checkBo lightweight jQuery plugin v0.1.4

Custom Checkbox and Radio, lightweight jQuery Plugin

Demo and Documentation are available here

Features

  • Cross browsers: Chrome, Firefox, Safari, Opera ( PC, MACOS ). IE8+ (CSS3 not supported)
  • Hand-held/Touch devices support: Andriod, IOS, BlackBerry
  • Lightweight Plugin
  • Check all checkboxes
  • Size options: Default, Small, Medium, Large
  • NO classes or custom attributes are required for states :checked.
  • Toggle Check all text
  • Show, Hide and Toggle elements
  • Switcher new
  • More options are Coming soon..

Getting Started

git clone https://github.com/elmahdim/checkbo.git

Usage: Include required files:

  1. <link rel="stylesheet" href="PATH-TO/checkBo.css">
  2. <link rel="stylesheet" href="PATH-TO/checkBo.js">

How to use:

$('ANY').checkBo();

Checkbox

<!-- Default -->
<label class="cb-checkbox">
  <input type="checkbox" name="..." />
  ...
</label>

<!-- Disabled -->
<label class="cb-checkbox">
  <input type="checkbox" disabled="disabled" name="..." />
  ...
</label>

<!-- Checked -->
<label class="cb-checkbox">
  <input type="checkbox" checked="checked" name="..." />
  ...
</label>

<!-- Checked Disabled -->
<label class="cb-checkbox">
  <input type="checkbox" checked="checked" disabled="disabled" name="..." />
  ...
</label>

Radio

<!-- Default -->
<label class="cb-radio">
  <input type="radio" name="..." />
  ...
</label>

<!-- Disabled -->
<label class="cb-radio">
  <input type="radio" disabled="disabled" name="..." />
  ...
</label>

<!-- Checked Disabled -->
<label class="cb-radio">
  <input type="radio" checked="checked" disabled="disabled" name="..." />
  ...
</label>

Methods

States

Change a specific checkbox or radio state.

$("ANY").prop('checked', true).change();
// OR
$('ANY').prop('checked', true).trigger('change');

Check all

Check all method

$('ANY').checkBo({
    checkAllButton : 'SELECTOR',      // Default: null
    checkAllTarget : 'SELECTOR',      // Default: null
    checkAllTextDefault : 'Check All',    // Default: null, Type: String
    checkAllTextToggle  : 'Un-check All'  // Default: null, Type: String
});

Check all toggle markup

<table>
  <tr>
    <th>
      <label class="cb-checkbox m-0" id="checkAllButton-SELECTOR">
        <input type="checkbox" name="check-all" />
        <ANY class="toggle-text">Check All</ANY>
      </label>
    </th>
  </tr>
  <tr class="checkAllTarget-SELECTOR">
    <td>
      <label class="cb-checkbox">
      <input type="checkbox"  name="..." />
      ... </label>
    </td>
  </tr>
</table>

Sizes

Checkbox size options

<label class="cb-checkbox">       <input type="checkbox" name="..." /> ... </label>
<label class="cb-checkbox cb-sm"> <input type="checkbox" name="..." /> ... </label>
<label class="cb-checkbox cb-md"> <input type="checkbox" name="..." /> ... </label>
<label class="cb-checkbox cb-lg"> <input type="checkbox" name="..." /> ... </label>

Radio size options

<label class="cb-radio">       <input type="radio" name="..." /> ... </label>
<label class="cb-radio cb-sm"> <input type="radio" name="..." /> ... </label>
<label class="cb-radio cb-md"> <input type="radio" name="..." /> ... </label>
<label class="cb-radio cb-lg"> <input type="radio" name="..." /> ... </label>

Show, Hide and Toggle

Show

<label class="cb-radio" data-show="#SELECTOR">  <!-- value as an id selector -->
    <input type="radio" name="..." />
    ...
</label>
<ANY class="is-hidden" id="SELECTOR">...</ANY>

<label class="cb-checkbox" data-show=".SELECTOR"> <!-- value as an class selector -->
    <input type="checkbox" name="..." />
    ...
</label>
<ANY class="is-hidden SELECTOR">...</ANY>

Hide

<label class="cb-radio" data-hide="#SELECTOR">
    <input type="radio" name="..." />
    ...
</label>
<ANY id="SELECTOR">...</ANY>

<label class="cb-checkbox" data-hide=".SELECTOR">
    <input type="checkbox" name="..." />
    ...
</label>
<ANY class="SELECTOR">...</ANY>

Toggle

<label class="cb-checkbox" data-toggle="#SELECTOR1" data-hide=".SELECTOR2" data-show="#SELECTOR3">
	<input type="checkbox" name="..." />
	...
</label>

<ANY id="SELECTOR1">...</ANY>
<ANY class="SELECTOR2">...</ANY>
<ANY class="is-hidden" id="SELECTOR3">...</ANY>

<label class="cb-checkbox" data-toggle="#X">
	<input type="checkbox" name="..." />
	...
</label>
<ANY class="is-hidden" id="X"></ANY>

<label class="cb-checkbox" data-toggle="#XX">
	<input type="checkbox" name="..." />
	...
</label>
<ANY id="XX">...</ANY>

Radio group toggle

<label class="cb-radio" data-show=".ONE" data-hide=".TWO,.THREE">
	<input type="radio" name="radio-group" checked="checked"/>
	...
</label>
<label class="cb-radio" data-show=".TWO,.ONE"  data-hide=".THREE">
	<input type="radio" name="radio-group"/>
	...
</label>
<label class="cb-radio" data-show=".THREE" data-hide=".ONE">
	<input type="radio" name="radio-group"/>
	...
</label>


<ANY class="ONE">
	...

	<ANY class="TWO is-hidden">
		...
	</ANY>
</ANY>

<ANY class="THREE is-hidden">
	...
</ANY>

Links

<label class="cb-checkbox">
    <input type="checkbox" />
    ... <a href="">...</a>
</label>

Switcher

Switcher Group

<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>

Switcher Off/Default State

<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>

Switcher On/Checked State

<div class="cb-switcher">
 <label class="inner-switcher">
  <input type="checkbox" checked data-state-on="ON" data-state-off="OFF"/>
 </label>
 <span class="cb-state">ON</span>
</div>

Switcher Toggle visibility

<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"> ... </div>

LICENSE

The MIT License (MIT)

Copyright (c) 2014 Mahmoud

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Changelog

  • v0.1.0 - First release.
  • v0.1.1 - Bug fix, improvements and new features:
    • Bug fix: radio group
    • Improvements: re-structure src folder versions and general improvements
    • New features: Check all toggle text. Show, Hide and Toggle.
  • v0.1.2 - BUg fix: fix radio buttons animation in Safari
  • v0.1.3 - Improvements: Kill the bubbling on the click event ( link inside label ), Radio group toggle ( show hide ).
  • v0.1.4 - New feature: Switcher

checkbo's People

Contributors

elmahdim avatar elmahdimahmoud avatar

Stargazers

Joni Pavanello avatar  avatar Quang Pham avatar  avatar Manuel Luciani avatar Eugen Soloviov avatar afewnotes avatar Shavkat Khamidjanov avatar 安正超 avatar Varun U avatar  avatar Dmitriy Skudarnov avatar Mikhail Medvedev avatar Angus H. avatar zhicheng avatar Mihail Diordiev avatar ted avatar Santiago Montoya A. avatar Amos Lee avatar  avatar MeWebStudio - Muharrem ERİN avatar Dilip Kr. Shukla avatar Khoerodin avatar Nam Nguyen avatar Leszek Pawlak  avatar Sun HaiXin avatar halleck avatar Ashkon Hemmati avatar Kunal Varma avatar  avatar  avatar hzdad avatar Michael van Leest avatar Osman YAZICI avatar Mohammad Ali avatar Gil Álvaro avatar Carabineiro avatar Hernán Silva avatar  avatar Andrey Yaroshenko avatar Alexander Zaytsev avatar Akrios avatar eviao avatar Pedro Menezes avatar Jaritas avatar  avatar  avatar Jose Fernandez avatar Goio Telletxea avatar Kevin avatar maitokuwahara avatar Marian Ondrasak avatar Marc Schneider avatar Radu Micu avatar Wasim Shaikh avatar Ibrahim Nergiz avatar  avatar  avatar Tuğrul Gedikli avatar Luan Santana Marques avatar Austris avatar Loïc Huvé avatar Narcis Radu avatar Nathan Jessen avatar Jonathan Mendes avatar Peter Brinck avatar  avatar  avatar Christopher Chiu avatar  avatar Diego Marcel avatar Adriano Cahete avatar Octavio Turra avatar Bobbie Tables avatar Tai Hoang avatar Brad Ward avatar Raphael Carlos Rego avatar julien Hautier avatar Igor Petrov avatar valters grišāns avatar veryblue avatar Ryota Aoki a.k.a Yoda avatar chris avatar Sam Yamashita avatar Lance Quejada avatar Λdrian Q avatar Alexander avatar Sébastien Juzac avatar Guillaume Quimper avatar Moz Morris avatar Neal Shyam avatar Timon van Spronsen avatar Taiki Yoshikawa avatar Batuhan KATIRCI avatar Adam Wintle avatar Aaron Christy avatar Tomohiro Onuma avatar Dylan Jhaveri avatar Brad Rhoads avatar Fernando Carrettoni avatar

Watchers

Joao Borges avatar Felix Häusler avatar  avatar James Cloos avatar akbarwibawa avatar  avatar Carabineiro avatar Ashkon Hemmati avatar  avatar Mihail Diordiev avatar  avatar

checkbo's Issues

Problem with columns.

Love your plugin! Thank you very much!
If I want to do 2 or 3 column then the second and the third column does not work. Checkmark does not appear.

 <style>
                        .selectCat-1 {
                        -webkit-column-count:2;  
                        -moz-column-count:2;  
                        column-count:2;  
                        }
</style>
                        <div id="СatTree" class="selectCat-1">
                            <div id="СatTree" class="selectCat-1">
                                <div class="selectCat">
                                    <label class="cb-radio cb-sm" rel="cat" id="1"><input type="radio" name="selectCat" value="1">
                                        Test-1
                                    </label><br>
                                    <label class="cb-radio cb-sm" rel="cat" id="1"><input type="radio" name="selectCat" value="1">
                                        Test-2
                                    </label><br>                                    
                                    <label class="cb-radio cb-sm" rel="cat" id="1"><input type="radio" name="selectCat" value="1">
                                        Test-3
                                    </label><br>
                                </div>
                            </div>
                        </div>

Check All - several groups on one page

How can I make Check All if you want to put on one page, several groups of checkboxes. I will be more 30 under each write code correctly.
Tell me how to make universally for all groups. Thank you

Initializable at some time.

Hi,

I want to initialize checkbo when created a form dynamically.

In my App, Form is created dynamically by js.

After created, I do this $('form').checkBo();.
So, CSS style is doubled.

__reserven _
( This image is initialized 3 times. )

Can I initialize checkbo some time?

Safari Issue

People are reporting that radio buttons aren't working in safari. The animation is stuck on the first frame it appears.
Image of Issue
I don't have safari and have not tested for myself, the source of the complaints are here: Designer News

error radio-group

Very sorry, but do not even like that does not work!

<div class="col-md-4" style="float: left">

        <label class="cb-radio">
            <input type="radio" name="radio-group-name" value="Radio-First-val"/>
            Group A - First
        </label>
</div>
<div class="col-md-4" style="float: left">
        <label class="cb-radio">
            <input type="radio" name="radio-group-name" value="Radio-First-val"/>
            Group B - First
        </label>
</div>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.