Book Image

Building Impressive Presentations with impress.js

Book Image

Building Impressive Presentations with impress.js

Overview of this book

Everyone has had to present during their lifetime. We've all spent agonizing hours trying to make those PowerPoint presentations engaging. Well now there is a tool that will make those presentations look like child's play. Impress.js is a powerful library that eases the task of creating presentations with smooth animations without depending on a software tool. You are no longer limited to desktop tools as these presentations run on any supported browser anywhere on the Internet. "Building Impressive Presentations with impress.js" is a quick guide to creating professional presentations using the best aspects of CSS3. It will also guide you through several practical examples which go beyond the conventional slide-based presentations, covering each aspect of the Impress library. From simple presentations to your own personal website this handy practical guide will ensure you get the most out of Impress.JS as quickly as you can. Starting with a simple slide-based presentation we move quickly on adding in sliders, galleries and portfolios to utilize this amazing tool. 3D transitions, rotations, scaling, and transforms are also covered to give your presentations that something extra. The final step is bringing all this together to create a personal website that is viewable on all impress supported browsers. "Building Impressive Presentations with impress.js" gives you the chance to stand out from the competition and engage with audiences in a way you never have before.
Table of Contents (14 chapters)
Building Impressive Presentations with impress.js
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Handling the step click event


Apart from the keys discussed in the previous section, impress.js provides a click event on each step. We can directly move to any step by clicking on the step.

Tip

Ideally we should see more than one slide to use the click event. Generally, we will have steps covering the complete width and height of the screen, so we can only use click event in an overview step for most cases.

Let's see how the click event is handled inside the core impress code:

document.addEventListener("click", function ( event ) {
    var target = event.target;
    // find closest step element that is not active
    while ( !(target.classList.contains("step") && !target.classList.contains("active")) &&
        (target !== document.documentElement) ) {
        target = target.parentNode;
    }

    if ( api.goto(target) ) {
        event.preventDefault();
    }
}, false);

This code first gets the target element on the click event. Then, it checks if it contains the step class...