JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 145
  • Score
    100M100P100Q81298F
  • License MIT

Module for creating an accessible, progressively enhanced floating label

Package Exports

  • makeup-floating-label

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (makeup-floating-label) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

makeup-floating-label

Module for creating an accessible, progressively enhanced floating label.

Experimental

This CommonJS module is still in an experimental state, until it reaches v1.0.0 you must consider all minor releases as breaking changes. Patch releases may introduce new features, but will be backwards compatible.

Install

// via npm
npm install makeup-floating-label

// via yarn
yarn add makeup-floating-label

Example

// require the module
const FloatingLabel = require('makeup-floating-label');

// get NodeList
const widgetEls = document.querySelectorAll('.floating-label');

// assign next id to each element
widgetEls.forEach(function(el) {
    var widget = new FloatingLabel(el);
});

Markup:

<div class="floating-label">
    <label class="floating-label__label" for="input-1">Input 1</label>
    <input class="floating-label__textbox" id="input-1" name="input-1" />
</div>

Params

  • el: the root widget el
  • options.labelElementAnimateModifier: the classname to add when the label begins its CSS animation (default: 'floating-label__label--animate')
  • options.labelElementInlineModifier: the classname to add when the label is in its non-floating state (default: 'floating-label__label--inline')
  • options.textboxElementBackgroundRGB: for the purposes of a Chrome autofill bug, if your textbox background colour is not white, specify its RGB value (default: 'rgb(255, 255, 255)')

Methods

  • refresh(): call this after form autofill or reset to refresh the label state

Custom Events

None

Dependencies

None

Polyfills

None