Skip to content
This repository has been archived by the owner on Oct 3, 2019. It is now read-only.

jQuery collection plugin that triggers events on keydown for common accessibility keys e.g. ENTER, SPACE, ESC, ARROW KEYS.

License

Notifications You must be signed in to change notification settings

makeup-jquery/jquery-common-keydown

Repository files navigation

jquery-common-keydown

Build Status Coverage Status Dependency status devDependency status

jQuery collection plugin that adds observer for common accessibility keydown event, e.g. enter, space, esc, arrows.

$(collection).commonKeyDown();

Install

npm install jquery-common-keydown

Example

<ul>
    <li><button>Button 1</button></li>
    <li><button>Button 2</button></li>
    <li><button>Button 3</button></li>
</ul>
// non-delegated event listener
$('ul').commonKeyDown().on('spaceKeyDown enterKeyDown', function(e) {
    // this = ul
    // e.target = button
});
// delegated event listener
$('ul').commonKeyDown().on('spaceKeyDown enterKeyDown', 'button', function(e) {
    // this = button
    // e.target = button
});

Events

  • enterKeyDown
  • escapeKeyDown
  • spaceKeyDown
  • pageUpKeyDown
  • pageDownKeyDown
  • endKeyDown
  • homeKeyDown
  • leftArrowKeyDown
  • upArrowKeyDown
  • rightArrowKeyDown
  • downArrowKeyDown

Constants

$.fn.commonKeyDown.keyCodes = {
    ENTER: 13,
    ESCAPE: 27,
    SPACE: 32,
    PAGEUP: 33,
    PAGEDOWN: 34,
    END: 35,
    HOME: 36,
    LEFTARROW: 37,
    UPARROW: 38,
    RIGHTARROW: 39,
    DOWNARROW: 40
};

Development

Run npm start for browser based development or npm run tdd for test driven development. All tests are located in test.js.

Execute npm run to view all available CLI scripts:

  • npm start launch local server and refreshes browser on any source file change
  • npm test runs tests & generates reports (see reports section below)
  • npm run tdd test driven development: watches code and re-tests after any change
  • npm run lint lints code and reports to lint.txt
  • npm run build cleans, lints, tests and minifies (called on npm prepublish hook)
  • npm run clean deletes all generated test reports and coverage files

Reports

Each test run will generate the following reports:

  • /test_reports/coverage contains Istanbul code coverage report
  • /test_reports/html contains HTML test report
  • /test_reports/junit contains JUnit test report

CI Build

https://travis-ci.org/makeup-jquery/jquery-common-keydown

Code Coverage

https://coveralls.io/github/makeup-jquery/jquery-common-keydown?branch=master

About

jQuery collection plugin that triggers events on keydown for common accessibility keys e.g. ENTER, SPACE, ESC, ARROW KEYS.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages