Bon mon titre est vraiment pas très évocateur mais je savais pas vraiment comment dire
Bon alors sur mon site je veux faire défiler les différentes div en appuyant sur des touches (par exemple les flèches avant et arrière)
J'ai récupérer ce code sur Codrops pour les animations (voir un peu plus bas) , actuellement la transition n'apparait seulement lorsque j'appuie sur un lien, mais j'aimerais le passer sur les touches du clavier.
Voila le code
J'ai essayer de rajouter ce code, mais cela ne marche pas
J'aimerais savoir comment faire cela.
Ensuite j'aimerais aussi faire un menu pour passer d'une div a une autre (je ne sais pas si c'est faisable :s)
Enfin voila
Si je n’ai pas été assez clair, je me tiens a votre disposition pour répondre à vos questions
Merci d'avance
Modifié par Denkaa (05 Nov 2013 - 15:57)
Bon alors sur mon site je veux faire défiler les différentes div en appuyant sur des touches (par exemple les flèches avant et arrière)
J'ai récupérer ce code sur Codrops pour les animations (voir un peu plus bas) , actuellement la transition n'apparait seulement lorsque j'appuie sur un lien, mais j'aimerais le passer sur les touches du clavier.
Voila le code
var PageTransitions = (function() {
var $main = $( '#pt-main' ),
$pages = $main.children( 'div.pt-page' ),
$iterate = $( '#iterateEffects' ),
animcursor = 1,
pagesCount = $pages.length,
current = 0,
isAnimating = false,
endCurrPage = false,
endNextPage = false,
animEndEventNames = {
'WebkitAnimation' : 'webkitAnimationEnd',
'OAnimation' : 'oAnimationEnd',
'msAnimation' : 'MSAnimationEnd',
'animation' : 'animationend'
},
// animation end event name
animEndEventName = animEndEventNames[ Modernizr.prefixed( 'animation' ) ],
// support css animations
support = Modernizr.cssanimations;
function init() {
$pages.each( function() {
var $page = $( this );
$page.data( 'originalClassList', $page.attr( 'class' ) );
} );
$pages.eq( current ).addClass( 'pt-page-current' );
$( '#dl-menu' ).dlmenu( {
animationClasses : { in : 'dl-animate-in-2', out : 'dl-animate-out-2' },
onLinkClick : function( el, ev ) {
ev.preventDefault();
nextPage( el.data( 'animation' ) );
}
} );
$iterate.on( 'click', function() {
if( isAnimating ) {
return false;
}
if( animcursor > 67 ) {
animcursor = 1;
}
nextPage( animcursor );
++animcursor;
} );
}
function nextPage( animation ) {
if( isAnimating ) {
return false;
}
isAnimating = true;
var $currPage = $pages.eq( current );
if( current < pagesCount - 1 ) {
++current;
}
else {
current = 0;
}
var $nextPage = $pages.eq( current ).addClass( 'pt-page-current' ),
outClass = '', inClass = '';
switch( animation ) {
case 62:
outClass = 'pt-page-rotateCarouselLeftOut pt-page-ontop';
inClass = 'pt-page-rotateCarouselLeftIn';
break;
}
$currPage.addClass( outClass ).on( animEndEventName, function() {
$currPage.off( animEndEventName );
endCurrPage = true;
if( endNextPage ) {
onEndAnimation( $currPage, $nextPage );
}
} );
$nextPage.addClass( inClass ).on( animEndEventName, function() {
$nextPage.off( animEndEventName );
endNextPage = true;
if( endCurrPage ) {
onEndAnimation( $currPage, $nextPage );
}
} );
if( !support ) {
onEndAnimation( $currPage, $nextPage );
}
}
function onEndAnimation( $outpage, $inpage ) {
endCurrPage = false;
endNextPage = false;
resetPage( $outpage, $inpage );
isAnimating = false;
}
function resetPage( $outpage, $inpage ) {
$outpage.attr( 'class', $outpage.data( 'originalClassList' ) );
$inpage.attr( 'class', $inpage.data( 'originalClassList' ) + ' pt-page-current' );
}
init();
return { init : init };
})();
J'ai essayer de rajouter ce code, mais cela ne marche pas
if ( window.addEventListener )
{
var kkeys = [], poupi = "13";
window.addEventListener("keydown", function(e)
{
kkeys.push( e.keyCode );
if ( kkeys.toString().indexOf( poupi ) >= 0 )
{
outClass = 'pt-page-rotateCarouselLeftOut pt-page-ontop';
inClass = 'pt-page-rotateCarouselLeftIn';
}
}, true);
}
J'aimerais savoir comment faire cela.
Ensuite j'aimerais aussi faire un menu pour passer d'une div a une autre (je ne sais pas si c'est faisable :s)
Enfin voila
Si je n’ai pas été assez clair, je me tiens a votre disposition pour répondre à vos questions
Merci d'avance
Modifié par Denkaa (05 Nov 2013 - 15:57)