Home >Web Front-end >CSS Tutorial >js and CSS3 to achieve card rotation switching effect

js and CSS3 to achieve card rotation switching effect

不言
不言Original
2018-06-25 16:28:542894browse

This article mainly introduces js CSS3 to achieve card rotation switching effect in detail. It has a certain reference value. Interested friends can refer to it

We often see it in the game Some cards have the effect of switching left and right. The middle one is the most eye-catching. Swipe left or right to switch to another one. Today we will use CSS3 to achieve this effect.

Let’s take a look at a demo first. You can adjust the specific style yourself:

(You can click the button to switch on PC, and on mobile Swipe left and right to switch)

From the effect, we can see that these 5 ps can be switched left and right. Each time you switch, there will always be one displayed in a conspicuous position in the middle. When switching, it seems that p has been moved and DOM additions and deletions have been performed. But if you examine the elements, you can see that the DOM element has not changed its position, it is still in that position. We just switched the class on each element, so the position on the page seems to have changed.

In fact, the principle is this: without adding or deleting DOM, write a specific style for each p in the position, perform absolute positioning for each p, and then rotate the styles. Each switch has a 0.6s transition process:

-webkit-transition: all 0.6s;
transition: all 0.6s;

For example, the classes from left to right are: item_0, item_1, item_cur, item_3 , item_4, each class is the position of the current p. When sliding to the left, the p on the right will switch to the middle, so that the class becomes item_1, item_cur, item_3, item_4, item_0 from left to right.

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');
}

The above is the entire content of this article. I hope it will be helpful to everyone’s study. For more related content, please pay attention to the PHP Chinese website!

Related recommendations:

How does JavaScript determine whether the browser supports CSS3 attributes

js and css3 to achieve rotation effects

jQuery and CSS3 folding card drop-down list box to achieve the effect

The above is the detailed content of js and CSS3 to achieve card rotation switching effect. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn