Zebra ClearInput
A tiny jQuery plugin for enhancing web forms by allowing users to easily clear values in text input boxes
Zebra ClearInput is a lightweight jQuery plugin designed to enhance the usability of web forms by adding a user-friendly feature that allows users to effortlessly clear the content of input fields. This is achieved by attaching a small icon to input fields. When users click on this icon, it promptly erases any text that has been entered.
As soon as a user begins typing in the input field, the option to clear the input value becomes visible. Once the input field loses focus, the option to clear the value reappears when the mouse hovers over the input field.
Features
- it works out of the box and has (almost) no configuration options
- it is really tiny - it weighs 1.4KB uncompressed and ~600 bytes gzipped
- works in any modern browser - Firefox, Chrome, Safari, Edge, Opera
🎂 Support the development of this project
Your support means a lot and it keeps me motivated to keep working on open source projects.
If you like this project please ⭐ it by clicking on the star button at the top of the page.
If you are feeling generous, you can buy me a coffee by donating through PayPal, or you can become a sponsor.
Either way - Thank you! 🎉
Demo
See the demos
Requirements
Zebra ClearInput has no dependencies other than jQuery 1.7.0+
Installation
Zebra ClearInput is available as a npm package. To install it use:
npm install zebra_clearinput --save
How to use
First, load jQuery from a CDN and provide a fallback to a local source like:
<script src="https://code.jquery.com/jquery-3.5.0.min.js"></script>
<script>window.jQuery || document.write('<script src="path/to/jquery-3.5.0.js"><\/script>')</script>
Load the Zebra ClearInput jQuery plugin:
<script src="path/to/zebra_clearinput.min.js"></script>
Alternatively, you can load Zebra ClerInput from JSDelivr CDN like this:
<script
src="https://cdn.jsdelivr.net/npm/zebra_clearinput@latest/dist/zebra_clearinput.min.js"></script>
<script
src="https://cdn.jsdelivr.net/npm/zebra_clearinput@1.0.0/dist/zebra_clearinput.min.js"></script>
Load the style sheet file from a local source
<link rel="stylesheet" href="path/to/zebra_clearinput.min.css">
...or from JSDelivr CDN
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/zebra_clearinput@latest/dist/zebra_clearinput.min.css">
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/zebra_clearinput@1.0.0/dist/zebra_clearinput.min.css">
Now, within the DOM-ready event do
$(document).ready(function() {
new $.Zebra_ClearInput('input[type=text]');
new $.Zebra_ClearInput('input.myClass');
new $.Zebra_ClearInput('input[type="text"]', {
button_class_name: 'Zebra_ClearInput myCustomStyles'
});
});
Configuration options
Properties
Property | Type | Default | Description |
---|
container_class_name | string | Zebra_ClearInput_Container | The CSS class(es) to be applied to the container DIV that will wrap the target text input element |
button_class_name | string | Zebra_ClearInput | The CSS class(es) to be applied to the button associated with the text input element |
Methods
destroy()
Removes a previously created instance of the plugin.
var clearInput = new $.Zebra_ClearInput('input[type="text"]');
clearInput.destroy();
Cross browser/device testing is done with