JavaScript Plugin To Easily Add Pause Buttons To Your GIFs | Gifa11y

Gifa11y easily adds pause buttons to your GIFs. This script is for shorter GIFs that repeat indefinitely. It only generates a static image from the first frame.


  • Generates an <canvas> element that is still in use
  • No need to download png/jpeg “still” from GIF


  • keyboard accessible
  • Unique accessible names for buttons based on alt text
  • Large target size (50 x 50 pixels)
  • Respect prefers low-traffic media query

How to make use of it:

1. Import the gifa11y.js library into the document.

<script src="gifa11y.js"></script>

2. Initialize the Gifa11y library and select the container element that contains your GIFs.

var gifa11y = new Gifa11y({
    container: '.container'

3. Auto-stop GIF image on initial upload. When enabled, the library creates a preview image from the first GIF frame using the HTML panel.

<img loading="lazy" 
     alt="Example GIF"

4. Ignore GIFs specified with the “gifa11y-ignore” class.

<img loading="lazy" 
     alt="Example GIF"

5. Available options.

var gifa11y = new Gifa11y({

    // Button styles
    buttonBackground: 'indigo',
    buttonBackgroundHover: 'rebeccapurple',
    buttonIconColor: 'white',
    buttonFocusColor: '#00e7ffad',
    buttonSvgSize: '1.5rem',
    buttonIconFontSize: '1rem',
    buttonPlayIconID: ' ',
    buttonPauseIconID: ' ',
    buttonPlayIconHTML: ' ',
    buttonPauseIconHTML: ' ',

    // Container
    container: 'body',

    // Ignore specific GIFs or regions
    exclusions: '',

    // Ignore specific containers
    gifa11yOff: '',

    // Inherit classes
    inheritClasses: true,

    // Pause GIFs on initial load
    initiallyPaused: false,

    // i18n
    langPause: 'Pause animation:',
    langPlay: 'Play animation:',
    langPauseAllButton: 'Pause all animations',
    langPlayAllButton: 'Play all animations',
    langMissingAlt: 'Missing image description.',
    langAltWarning: '&#9888; Error! Please add alternative text to GIF.',

    // Display a warning message when your GIF has no alt attribute
    missingAltWarning: true,

6. Create a button to play/pause all GIF files.

<button id="gifa11y-all">Pause/Play All GIFs</button>

See Demo And Download

Official Website(adamchaboryk): Click Here

This superior jQuery/javascript plugin is developed by adamchaboryk. For extra Advanced Usage, please go to the official website.

Related Posts


CSS Layout Components Horizontal/Vertical Stack | HStack and VStack

HStack and VStack in CSS – CSS layout components that (basically) stack anything horizontally and vertically. A pure CSS library that makes it easy to stack elements…


How to Add Floating Whatsapp Chat Button In HTML | venom-button

Venom Button is a very simple plugin for the jQuery floating WhatsApp button. Adds a floating button to your site that calls WhatsApp Click to Chat API. It will automatically start the WhatsApp…


Interactive Data Table Generator with JS/jQuery and JSON | Tabulator

Tabulator allows you to create interactive tables in seconds from any HTML Table, JavaScript array, AJAX data source, or JSON format data. Just include the library in your…


Simple Alert, Confirm, Prompt Popup Using Vanilla JavaScript Library | attention.js

JavaScript provides various built-in functionality to display popup messages for different purposes. Attention JS is a vanillaJS plugin used to create a custom alert, confirm, or Prompt…


Bootstrap 4 Sidebar Menu Responsive Template | MDB

Bootstrap Side Navbar – Responsive sidebar template based on the Bootstrap 4 framework. An easy-to-use, totally responsive, Google Material Design impressed aspect navigation for modern web app…


Lightweight Bootstrap 4 Toast Notification Plugin | BS4 Advanced Toast

A lightweight Bootstrap 4 Toast Notification plugin integrated with JS/jQuery. bs4-toast.js is a JavaScript library that enhances the native Bootstrap toast component with icons, buttons, callbacks, and…

Leave a Reply

Your email address will not be published. Required fields are marked *