Skip to content

Repository files navigation

MIT LicenceBootstrap 4.3.1Known VulnerabilitiesPackage QualityJSDelivr Badge

Bootstrap Switch Button

Bootstrap Switch Button converts plain checkboxes into awesome switch buttons.


Library Distributions

ProjectDescription
bootstrap4-toggleSupports bootstrap4 (requires jQuery)
bootstrap-switch-buttonSupports bootstrap4+ (ES6 class, no dependencies)
bootstrap-switch-button-reactSupports bootstrap4+ (React component, no dependencies)

Demos

Demos and API Docs:https://gitbrent.github.io/bootstrap-switch-button/

Demo GIF

Installation

CDN

<linkhref="https://cdn.jsdelivr.net/gh/gitbrent/bootstrap-switch-button@1.1.0/css/bootstrap-switch-button.min.css"
rel="stylesheet"
/><scriptsrc="https://cdn.jsdelivr.net/gh/gitbrent/bootstrap-switch-button@1.1.0/dist/bootstrap-switch-button.min.js"></script>

Download

Latest GitHub Release

NPM

npm i bootstrap-switch-button

Yarn

yarn add bootstrap-switch-button

Usage

Initialize With HTML

Simply add data-toggle="switchbutton" to automatically convert a plain checkbox into a bootstrap 4 switch button.

<inputid="chkSwitch" type="checkbox" data-toggle="switchbutton" />

Initialize With Code

Switch buttons can also be initialized via JavaScript code.

EX: Initialize id chkSwitch with a single line of JavaScript.

<inputid="chkSwitch" type="checkbox" checked/><script>$(function(){$("#chkSwitch").switchbutton();});</script>

API

Options

  • Options can be passed via data attributes or JavaScript
  • For data attributes, append the option name to data- (ex: data-onlabel="Enabled")
<inputtype="checkbox"
data-toggle="switchbutton"
data-onlabel="Enabled"
data-offlabel="Disabled"
/><inputtype="checkbox" id="switch-two" /><script>$(function(){$("#switch-two").switchButton({onlabel: "Enabled",offlabel: "Disabled"});});</script>
NameTypeDefaultDescription
onlabelstring/html"On"Text of the on switch button
offlabelstring/html"Off"Text of the off switch button
onstylestring"primary"Style of the on switch button. Possible values are: primary,secondary,success,danger,warning,info,light,dark
offstylestring"light"Style of the off switch button. Possible values are: primary,secondary,success,danger,warning,info,light,dark
sizestring"normal"Size of the switch button. Possible values are: large, normal, small, mini.
stylestringAppends the value to the class attribute of the switch button. This can be used to apply custom styles. Refer to Custom Styles for reference.
widthintegernullSets the width of the switch button. if set to null, width will be auto-calculated.
heightintegernullSets the height of the switch button. if set to null, height will be auto-calculated.

Methods

Methods can be used to control switch buttons directly.

<inputid="switch-demo" type="checkbox" data-toggle="switchbutton" />
MethodExampleDescription
initialize$('#switch-demo').switchButton()Initializes the switch button plugin with options
destroy$('#switch-demo').switchButton('destroy')Destroys the switch button
on$('#switch-demo').switchButton('on')Sets the switch button to 'On' state
off$('#switch-demo').switchButton('off')Sets the switch button to 'Off' state
toggle$('#switch-demo').switchButton('toggle')Toggles the state of the switch button on/off
enable$('#switch-demo').switchButton('enable')Enables the switch button
disable$('#switch-demo').switchButton('disable')Disables the switch button

Events

Event Propagation

Note All events are propagated to and from input element to the switch button.

You should listen to events from the <input type="checkbox"> directly rather than look for custom events.

<inputid="switch-event" type="checkbox" data-toggle="switchbutton" /><divid="console-event"></div><script>$(function(){$("#switch-event").change(function(){$("#console-event").html("Checked?: "+$(this).prop("checked"));});});</script>

API vs Input

This also means that using the API or Input to trigger events will work both ways.

<inputid="switch-trigger" type="checkbox" data-toggle="switchbutton" /><buttonclass="btn btn-success" onclick="toggleApiOn()">On by API</button><buttonclass="btn btn-danger" onclick="toggleApiOff()">Off by API</button><buttonclass="btn btn-success" onclick="toggleInpOn()">On by Input</button><buttonclass="btn btn-danger" onclick="toggleInpOff()">Off by Input</button><script>functiontoggleApiOn(){$("#switch-trigger").switchButton("on");}functiontoggleApiOff(){$("#switch-trigger").switchButton("off");}functiontoggleInpOn(){$("#switch-trigger").prop("checked",true).change();}functiontoggleInpOff(){$("#switch-trigger").prop("checked",false).change();}</script>

About

Bootstrap 4 plugin/widget that converts checkboxes into responsive toggles.

Topics

Resources

Stars

33 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages