Vue組件實(shí)現(xiàn)旋轉(zhuǎn)木馬動(dòng)畫(huà)
本文實(shí)例為大家分享了Vue組件實(shí)現(xiàn)旋轉(zhuǎn)木馬動(dòng)畫(huà)的具體代碼,供大家參考,具體內(nèi)容如下
源碼如下
<template>
<div id="wrapper">
<transition-group name="list" tag="ul" mode="out-in">
<li v-for="(item,index) in piclist" :key="item.url" :style="config[index]">
<img :src="item.url">
</li>
</transition-group>
<a href="javascript:;" id="arrLeft" class="prev" @click="turnleft"></a>
<a href="javascript:;" id="arrRight" class="next" @click="turnright"></a>
</div>
</template>
js:
export default {
data() {
return {
piclist: [
{ url: require("../image/pic1.png") },
{ url: require("../image/pic2.png") },
{ url: require("../image/pic3.png") }
],
//文件圖片配置
config: [
{
position: "absolute",
width: "400px",
top: "20px",
left: "50px",
opacity: 0.2,
zIndex: 2,
transition: "1s"
},
{
position: "absolute",
width: "800px",
top: "100px",
left: "200px",
opacity: 1,
zIndex: 4,
transition: "1s"
},
{
position: "absolute",
width: "400px",
top: "20px",
left: "750px",
opacity: 0.2,
zIndex: 2,
transition: "1s"
}
],
previous: 0,
now: Date.now()
};
},
methods: {
//實(shí)現(xiàn)點(diǎn)擊按鈕切換的動(dòng)畫(huà),設(shè)置時(shí)間參數(shù)防止多次點(diǎn)擊
turnleft: function() {
this.now = Date.now();
if (this.now - this.previous > 1000) {
this.config.push(this.config.shift());
this.previous = this.now;
}
},
turnright: function() {
this.now = Date.now();
if (this.now - this.previous > 1000) {
this.config.unshift(this.config.pop());
this.previous = this.now;
}
}
}
};
css:
* {
margin: 0;
padding: 0;
}
#wrapper {
margin: auto;
height: 500px;
width: 79%;
position: relative;
}
ul {
list-style: none;
}
li img {
height: 500px;
width: 100%;
}
.prev,
.next {
position: absolute;
height: 60px;
width: 60px;
border-radius: 50%;
top: 50%;
margin-top: -56px;
overflow: hidden;
text-decoration: none;
background-color: aqua;
z-index: 5;
opacity: 1;
}
.prev {
left: 0;
}
.next {
right: 0;
}
.picleft {
width: 400;
top: 20;
left: 50;
opacity: 0.2;
z-index: 2;
}
.piccenter {
width: 800;
top: 100;
left: 200;
opacity: 1;
z-index: 4;
}
.picright {
width: 400;
top: 20;
left: 750;
opacity: 0.2;
z-index: 2;
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
vue 解決遍歷對(duì)象顯示的順序不對(duì)問(wèn)題
今天小編就為大家分享一篇vue 解決遍歷對(duì)象顯示的順序不對(duì)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11
Element圖表初始大小及窗口自適應(yīng)實(shí)現(xiàn)
這篇文章主要介紹了Element圖表初始大小及窗口自適應(yīng)實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
Vue手寫dialog組件模態(tài)框過(guò)程詳解
這篇文章主要介紹了Vue手寫dialog組件模態(tài)框過(guò)程,dialog組件為模態(tài)框,因此應(yīng)該是固定定位到頁(yè)面上面的,并且需要留一定的插槽來(lái)讓使用者自定義顯示內(nèi)容2023-02-02
axios的interceptors多次執(zhí)行問(wèn)題解決
這篇文章主要為大家介紹了axios中interceptors多次執(zhí)行問(wèn)題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
Vue3.0使用ref和reactive來(lái)創(chuàng)建響應(yīng)式數(shù)據(jù)
ref?和?reactive?是?Composition?API?中用來(lái)創(chuàng)建響應(yīng)式數(shù)據(jù)的兩個(gè)核心函數(shù),在本篇文章中,我們將詳細(xì)講解如何使用?ref?和?reactive?來(lái)創(chuàng)建響應(yīng)式數(shù)據(jù),并展示它們之間的區(qū)別和使用場(chǎng)景,需要的朋友可以參考下2024-11-11
vue3在單個(gè)組件中實(shí)現(xiàn)類似mixin的事件調(diào)用
這篇文章主要為大家詳細(xì)介紹了vue3如何在單個(gè)組件中實(shí)現(xiàn)類似mixin的事件調(diào)用,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-01-01
vue-music關(guān)于Player播放器組件詳解
這篇文章主要為大家詳細(xì)介紹了vue-music關(guān)于Player播放器組件的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-11-11
利用vue組件實(shí)現(xiàn)圖片的拖拽和縮放功能
這篇文章主要給大家介紹了關(guān)于利用vue組件實(shí)現(xiàn)圖片的拖拽和縮放功能的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-01-01
解決Vue+Electron下Vuex的Dispatch沒(méi)有效果問(wèn)題
這篇文章主要介紹了Vue+Electron下Vuex的Dispatch沒(méi)有效果的解決方案 ,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-05-05

