1.0.1 • Published 8 years ago

angular-hold-button v1.0.1

Weekly downloads
12
License
-
Repository
github
Last release
8 years ago

Angular Hold Button

An AngularJS directive that turns a regular <button> into one that has to be held for a configurable amount of time before it performs an action. It can be used instead of a confirmation dialog for destructive actions.

Demo

Preview

Hold Button demo

Live demo

Live view of examples/demo.html.

Installation

npm

npm install angular-hold-button --save

bower

bower install angular-hold-button --save

Manual

Copy dist/angular-hold-button.min.js to your project.

How to use

Include the JS and CSS files:

<script src="angular-hold-button.min.js"></script>
<link rel="stylesheet" href="angular-hold-button.min.css">

Add rmHoldButton to dependencies

var app = angular.module('ExampleApp', [
    'rmHoldButton',
]);

Add rm-onhold attribute to a <button> in your template

<button rm-onhold="deleteSomething()">Hold me tight!</button>

Options

You can customise how long the button has to be held:

<button rm-onhold="deleteSomething()" rm-onhold-options="{ duration: 2000 }">Hold me tight for 2s!</button>

duration is a value in milliseconds.

Customise the look

Basics

The button
.rm-hold-button {
    border: 1px solid red;
    color: red;
    line-height: 24px;
    padding: 10px 20px;
}
Colour of the fill
.rm-hold-button-fill {
    background-color: red;
}
Colour of text in the filled portion of the button
.rm-hold-button-text {
    color: white;
}

Use a line indicator instead of whole background

Along the top
.rm-hold-button-fill {
    height: 3px;
}
Along the bottom
.rm-hold-button-fill {
    bottom: 0;
    height: 3px;
    top: auto;
}