This is a simple iOS 7 style switch directive for AngularJS. You can use this module as you would use the default HTML checkbox input element. This is a super lightweight module and you can completely change the design using just CSS.
Supported by all modern browsers: Chrome, Firefox, Opera, Safari, IE8+
Inspired by switchery - in angular way.
Download the package from github
. The package is also available over npm install angular-ui-switch
or bower install angular-ui-switch
.
Include javascript
and css
files into your page.
<!DOCTYPE html>
<html lang="en" ng-app="app">
<head>
...
<link rel="stylesheet" href="https://github.com/xpepermint/angular-ui-switch/blob/master/ui-switch.min.css"/>
</head>
<body>
...
<script src="https://github.com/xpepermint/angular-ui-switch/raw/master//ajax.googleapis.com/ajax/libs/angularjs/1.3.0-rc.3/angular.min.js"></script>
<script src="https://github.com/xpepermint/angular-ui-switch/raw/master/ui-switch.min.js"></script>
</body>
</html>
Declare a dependency on the module.
angular.module('myModule', ['uiSwitch']);
Insert the switch in your html template.
<form>
<switch id="enabled" name="enabled" ng-model="enabled" class="green"></switch>
<br>{{ enabled }}
</form>
Add optional on/off text
<form>
<switch id="enabled" name="enabled" ng-model="enabled" on="On" off="Off" class="green"></switch>
<br>{{ enabled }}
</form>
Disabled state
<form>
<switch id="enabled" name="enabled" ng-model="enabled" disabled="true" class="green"></switch>
<br>{{ enabled }}
</form>
You can completely change the design. All the magic is hidden inside two CSS classes.
.switch {
/* frame */
}
.switch small {
/* button */
}
.switch.checked {
/* frame when enabled */
}
.switch.checked small {
/* button when enabled */
}
Update version in package.json
and bower.json
.
Run make compile
to minify files.
Run make publish
to publish.