這篇文章主要介紹了js+CSS3怎么實(shí)現(xiàn)卡牌旋轉(zhuǎn)切換效果的相關(guān)知識,內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇js+CSS3怎么實(shí)現(xiàn)卡牌旋轉(zhuǎn)切換效果文章都會有所收獲,下面我們一起來看看吧。
紅崗網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,紅崗網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為紅崗上1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)營銷網(wǎng)站建設(shè)要多少錢,請找那個(gè)售后服務(wù)好的紅崗做網(wǎng)站的公司定做!
我們先來看個(gè)demo,具體的樣式各位可以自己調(diào)整:
(PC下可點(diǎn)擊按鈕切換,移動端可左右滑動切換)
從效果上我們可以看到,這5個(gè)div可以左右的切換,每次切換時(shí)總會有一個(gè)在中間顯眼的位置進(jìn)行展示。在切換時(shí),看起來是div進(jìn)行了移動,進(jìn)行了DOM的增刪操作。但是如果審查下元素,就能看到,DOM元素沒有變換位置,它依然在那個(gè)位置,我們只是切換了每個(gè)元素上的class,于是頁面上的位置看起來是發(fā)生了變化。
其實(shí)原理就是這樣的: 不進(jìn)行DOM的增刪,為每個(gè)位置上的div都寫上特定的樣式,每個(gè)div都進(jìn)行絕對定位,然后進(jìn)行樣式的輪播。 每次切換都有個(gè)0.6s過渡過程:
-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的定位,向左滑動時(shí),右邊的div會切換到中間,這樣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'); }
關(guān)于“js+CSS3怎么實(shí)現(xiàn)卡牌旋轉(zhuǎn)切換效果”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“js+CSS3怎么實(shí)現(xiàn)卡牌旋轉(zhuǎn)切換效果”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。