Socket
Socket
Sign inDemoInstall

konami-code-js

Package Overview
Dependencies
0
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    konami-code-js

Fire a JavaScript Event when you enter the « Up Up Bottom Bottom Left Right Left Right B A » Konami Code Sequence.


Version published
Weekly downloads
1.1K
increased by17.11%
Maintainers
1
Install size
71.0 kB
Created
Weekly downloads
 

Readme

Source

KonamiCodeJS

Fire a JavaScript Event when you enter the « Up Up Bottom Bottom Left Right Left Right B A » Konami Code Sequence with your keyboard. That work also when you do the following touch gesture « Up Up Bottom Bottom Left Right Left Right Tap Tap » with your finger.


Vous êtes français ? Le README derrière ce lien vous sera peut-être plus agréable.

Basic Usage

new KonamiCode(function () {
    // Do something here.
    // This part will be executed if « Up Up Down Down Left Right Left Right B A »
    // is recognised from Keyboard or Touch Gesture.
});

Custom Example

In this example, we will authorized only the area of <article> to listening Konami Code Sequence and after fire the Correct Sequence, avoid next Konami Code recognization.

var kc = new KonamiCode({
    listener: document.getElementsByTagName("article")[0]
});

kc.setCallback(function () {
    kc.disable();

    // Do something here.
    // This part will be executed if « Up Up Down Down Left Right Left Right B A »
    // is recognised from Keyboard or Touch Gesture.
});

API Documentation

Version: 0.8.1

Author: Bruno Lesieur

new KonamiCode([options])

Create Konami Code Sequence recognition « Up Up Bottom Bottom Left Right Left Right B A » on specific HTMLElement or on global HTMLDocument.

ParamTypeDescription
[options]Object | functionContainer for all options. If type of options is Function, it is executed after Konami Code Sequence has been recognize.
[options.callback]functionIf options is not a Function, options.callback is executed after Konami Code Sequence has been entered. The first parameter provided by the callback is current instance of KonamiCode.
[options.listener]NodeBy default it is the HTMLDocument window.document. You can pass some HTMLElement like <input> (HTMLInputElement) to only recognize Konami Code Sequence from this element.
[options.debug]booleanBy default it is set to false. When you set this value to true, that allows you to see all debug message in the console.

konamiCode.enable() ⇒ KonamiCode

Active the listening of Konami Code Sequence.

Kind: instance method of KonamiCode

Returns: KonamiCode - Current instance of KonamiCode

konamiCode.enableKeyboardKeys() ⇒ KonamiCode

Active the listening of Konami Code Sequence for Keyboard Keys.

Kind: instance method of KonamiCode

Returns: KonamiCode - Current instance of KonamiCode

konamiCode.enableTouchGesture() ⇒ KonamiCode

Active the listening of Konami Code Sequence for Touch Gesture.

Kind: instance method of KonamiCode

Returns: KonamiCode - Current instance of KonamiCode

konamiCode.disable() ⇒ KonamiCode

Unactive the listening of Konami Code Sequence.

Kind: instance method of KonamiCode

Returns: KonamiCode - Current instance of KonamiCode

konamiCode.disabledKeyboardKeys() ⇒ KonamiCode

Unactive the listening of Konami Code Sequence for Keyboard Keys.

Kind: instance method of KonamiCode

Returns: KonamiCode - Current instance of KonamiCode

konamiCode.disabledTouchGesture() ⇒ KonamiCode

Unactive the listening of Konami Code Sequence for Touch Gesture.

Kind: instance method of KonamiCode

Returns: KonamiCode - Current instance of KonamiCode

konamiCode.setListener(listener) ⇒ KonamiCode

Change the listener. The old listener will no longer work. Note: change the listener enable this instance if it is previously disable().

Kind: instance method of KonamiCode

Returns: KonamiCode - Current instance of KonamiCode

ParamTypeDescription
listenerNodeYou can pass some HTMLElement like <input> (HTMLInputElement) to only recognize Konami Code Sequence from this element.

konamiCode.setCallback(callback) ⇒ KonamiCode

Change the Function executed after Konami Code Sequence has been entered.

Kind: instance method of KonamiCode

Returns: KonamiCode - Current instance of KonamiCode

ParamTypeDescription
callbackfunctionFunction executed after Konami Code Sequence has been entered. The first parameter provided by the callback is current instance of KonamiCode.

Example

new KonamiCode().setCallback(function (konamiCode) {
    konamiCode.disable();
    // Do something here.
});

konamiCode.setOptions([options]) ⇒ KonamiCode

Change options of instance currently existing.

Kind: instance method of KonamiCode

Returns: KonamiCode - Current instance of KonamiCode

ParamTypeDescription
[options]ObjectContainer for all options.
[options.callback]functionFunction executed after Konami Code Sequence has been entered. The first parameter provided by the callback is current instance of KonamiCode.
[options.listener]NodeBy default it is the HTMLDocument window.document. You can pass some HTMLElement like <input> (HTMLInputElement) to only recognize Konami Code Sequence from this element.
[options.debug]booleanBy default it is set to false. When you set this value to true, that allows you to see all debug message in the console.

KonamiCode.noConflict()

If a previous KonamiCode variable exist into global environment, you could kept it by changing name of current KonamiCode. You can also just use that function to change the name of Global « KonamiCode » variable.

Kind: static method of KonamiCode

Example

<script src="other/konami-code.js"></script>
<script src="last/konami-code.js"></script>
<script>
    var MyKC = KonamiCode.noConflict();
    console.log(KonamiCode); // Return the other KonamiCode
    console.log(MyKC); // Return your KonamiCode
</script>

KonamiCode.getNumberOfInstance() ⇒ number

Return the number of time KonamiCode was instanciated.

Kind: static method of KonamiCode

Returns: number - Number of KonamiCode instance create from begining.

Chaining

All API instanciated methods return the current instance of KonamiCode Object. That allows you to use instance like this.

new KonamiCode()
    .disable()
    .enable()
    .setListener(document.getElementsByTagName("body")[0])
    .setCallback(function (konamiCode) {
        konamiCode.disable();
        // Do something here.
        // This part will be executed if « Up Up Down Down Left Right Left Right B A »
        // is recognised from Keyboard or Touch Gesture.
    });

Debug Mode

You can see what step are used with console log message.

new KonamiCode({
    debug: true,
    callback: function (konamiCode) {
        konamiCode.disable();
    }
});

Import JavaScript File

By Direct Download

From NPM

npm install konami-code-js

From CDN

  • For development:
<script src="https://rawgit.com/Haeresis/konami-code-js/master/src/konami-code.js"></script>
  • For production:
<script src="https://cdn.rawgit.com/Haeresis/konami-code-js/master/src/konami-code.js"></script>

With AMD Loader

<script src="require.js"></script>
<script>
	requirejs(["konami-code"], function (KonamiCode) {
	    new KonamiCode(function () {
	    	// Do something here.
            // This part will be executed if « Up Up Down Down Left Right Left Right B A »
            // is recognised from Keyboard or Touch Gesture.
	    });
	});
</script>

With CommonJS Loader

var KonamiCode = require("konami-code-js");

new KonamiCode(function () {
    // Do something here.
    // This part will be executed if « Up Up Down Down Left Right Left Right B A »
    // is recognised from Keyboard or Touch Gesture.
});

Keywords

FAQs

Last updated on 05 Aug 2019

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc