Cet article présente principalement js CSS3 pour obtenir un effet de changement de rotation des cartes en détail. Il a une certaine valeur de référence. Les amis intéressés peuvent s'y référer
Nous le voyons souvent dans le jeu. basculer vers la gauche et la droite. Celui du milieu est le plus accrocheur. Faites glisser votre doigt vers la gauche ou la droite pour passer à un autre. Aujourd'hui, nous utiliserons CSS3 pour obtenir cet effet.
Jetons d'abord un coup d'œil à une démo. Vous pouvez ajuster le style spécifique vous-même :
(Vous pouvez cliquer sur le bouton pour allumer. le PC et sur la version mobile. Swipe vers la gauche et la droite pour basculer)
D'après l'effet, on peut voir que ces 5 ps peuvent être commutés à gauche et à droite, et à chaque fois il y a un switch, il y en aura toujours un affiché dans une position bien en vue au milieu. Lors du changement, il semble que p ait été déplacé et que des ajouts et suppressions DOM aient été effectués. Mais si vous examinez les éléments, vous pouvez voir que l'élément DOM n'a pas changé de position, il est toujours dans cette position. Nous venons de changer de classe sur chaque élément, donc la position sur la page semble avoir changé.
En fait, le principe est le suivant : sans ajouter ni supprimer le DOM, écrire un style spécifique pour chaque p dans la position, effectuer un positionnement absolu pour chaque p, puis faire pivoter les styles. Chaque commutateur a un processus de transition de 0,6 s :
-webkit-transition: all 0.6s; transition: all 0.6s;
Par exemple, les classes de gauche à droite sont : item_0, item_1, item_cur , item_3, item_4, chaque classe est la position du p actuel. En glissant vers la gauche, le p à droite basculera vers le milieu, de sorte que la classe devienne item_1, item_cur, item_3, item_4, item_0 de gauche à droite.
var egg_change = function(type){ var $demo = $('.demo'), index = parseInt( $demo.attr('index_cur')||2 ), $item = $('.demo .item'), len = $item.length; if( type=='left' ){ index = (index+1)%len; }else{ index = (index-1+len)%len; } $demo.attr('index_cur', index); $item.removeClass('item_0 item_1 item_3 item_4 item_cur'); $item.eq( (index-2+len)%len ).addClass('item_0'); $item.eq( (index-1+len)%len ).addClass('item_1'); $item.eq(index).addClass('item_cur'); $item.eq( (index+1)%len ).addClass('item_3'); $item.eq( (index+2)%len ).addClass('item_4'); }
Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, s'il vous plaît. faites attention au site Web PHP chinois !
Recommandations associées :
Comment JavaScript détermine-t-il si le navigateur prend en charge les propriétés CSS3 ?
js et css3 pour réaliser la rotation effet
jQuery et boîte de liste déroulante de cartes pliantes CSS3 pour obtenir l'effet
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!