js CSS3實(shí)現(xiàn)卡牌旋轉(zhuǎn)切換效果
我們經(jīng)常會(huì)在游戲里看到一些幾張卡牌左右切換的效果,中間的一張最突出醒目,向左或向右滑動(dòng)可切換到另一張,今天我們就用CSS3來(lái)實(shí)現(xiàn)下這種效果。
我們先來(lái)看個(gè)demo,具體的樣式各位可以自己調(diào)整:
(PC下可點(diǎn)擊按鈕切換,移動(dòng)端可左右滑動(dòng)切換)
從效果上我們可以看到,這5個(gè)div可以左右的切換,每次切換時(shí)總會(huì)有一個(gè)在中間顯眼的位置進(jìn)行展示。在切換時(shí),看起來(lái)是div進(jìn)行了移動(dòng),進(jìn)行了DOM的增刪操作。但是如果審查下元素,就能看到,DOM元素沒(méi)有變換位置,它依然在那個(gè)位置,我們只是切換了每個(gè)元素上的class,于是頁(yè)面上的位置看起來(lái)是發(fā)生了變化。
其實(shí)原理就是這樣的: 不進(jìn)行DOM的增刪,為每個(gè)位置上的div都寫(xiě)上特定的樣式,每個(gè)div都進(jìn)行絕對(duì)定位,然后進(jìn)行樣式的輪播。 每次切換都有個(gè)0.6s過(guò)渡過(guò)程:
-webkit-transition: all 0.6s; transition: all 0.6s;
比如從左往右的class分別為:item_0, item_1, item_cur, item_3, item_4,每個(gè)class都是當(dāng)前所在div的定位,向左滑動(dòng)時(shí),右邊的div會(huì)切換到中間,這樣class從左往右就變成了item_1, item_cur, item_3, item_4, item_0。
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'); }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
javascript中mouseover、mouseout使用詳解
這篇文章主要介紹了javascript中mouseover、mouseout使用詳解的相關(guān)資料,需要的朋友可以參考下2015-07-07javascript實(shí)現(xiàn)點(diǎn)擊按鈕切換圖片
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)點(diǎn)擊按鈕切換圖片,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08Javascript本地存儲(chǔ)localStorage看這一篇就夠了
這篇文章主要給大家介紹了關(guān)于Javascript本地存儲(chǔ)localStorage的相關(guān)資料,localStorage會(huì)可以將第一次請(qǐng)求的數(shù)據(jù)直接存儲(chǔ)到本地,這個(gè)相當(dāng)于一個(gè)5M大小的針對(duì)于前端頁(yè)面的數(shù)據(jù)庫(kù),需要的朋友可以參考下2024-07-07js使用for循環(huán)及if語(yǔ)句判斷多個(gè)一樣的name
這篇文章主要介紹了js使用for循環(huán)機(jī)if語(yǔ)句判斷多個(gè)一樣的name,此法比較實(shí)用,需要的朋友可以參考下2014-09-09window.location.href中url中數(shù)據(jù)量太大時(shí)的解決方法
這篇文章主要為大家介紹下window.location.href中url中數(shù)據(jù)量太大時(shí)的解決方法,需要的朋友可以參考下2013-12-12avalonjs實(shí)現(xiàn)仿微博的圖片拖動(dòng)特效
JavaScript實(shí)現(xiàn)仿微博的圖片拖動(dòng)特效,貌似這些天有不少朋友需要這功能,今天發(fā)現(xiàn)這款是js制作的好,不敢獨(dú)享,希望需要的朋友喜歡哦。2015-05-05javascript 數(shù)組精簡(jiǎn)技巧小結(jié)
本文給大家分享了13個(gè)非常常用的JavaScript數(shù)組操作的小技巧,有需要的小伙伴可以來(lái)看看,個(gè)人十分推薦.2020-02-02關(guān)于javascript作用域的常見(jiàn)面試題分享
關(guān)于JS作用域問(wèn)題,是面試的時(shí)候面試官樂(lè)此不疲的面試題,有時(shí)候確實(shí)是令人抓狂,下面這篇文章主要給大家分享了關(guān)于javascript作用域的一些常見(jiàn)面試題,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-06-06