/**
|
* demo.js
|
* http://www.codrops.com
|
*
|
* Licensed under the MIT license.
|
* http://www.opensource.org/licenses/mit-license.php
|
*
|
* Copyright 2017, Codrops
|
* http://www.codrops.com
|
*/
|
{
|
setTimeout(() => document.body.classList.add('render'), 60);
|
const navdemos = Array.from(document.querySelectorAll('nav.demos > .demo'));
|
const total = navdemos.length;
|
const current = navdemos.findIndex(el => el.classList.contains('demo--current'));
|
const navigate = (linkEl) => {
|
document.body.classList.remove('render');
|
document.body.addEventListener('transitionend', () => window.location = linkEl.href);
|
};
|
navdemos.forEach(link => link.addEventListener('click', (ev) => {
|
ev.preventDefault();
|
navigate(ev.target);
|
}));
|
document.addEventListener('keydown', (ev) => {
|
const keyCode = ev.keyCode || ev.which;
|
let linkEl;
|
if ( keyCode === 37 ) {
|
linkEl = current > 0 ? navdemos[current-1] : navdemos[total-1];
|
}
|
else if ( keyCode === 39 ) {
|
linkEl = current < total-1 ? navdemos[current+1] : navdemos[0];
|
}
|
else {
|
return false;
|
}
|
navigate(linkEl);
|
});
|
}
|