JS實現(xiàn)頭像循環(huán)滾動示例
更新時間:2023年11月29日 08:49:51 作者:HUMILITY
這篇文章主要為大家介紹了JS實現(xiàn)頭像循環(huán)滾動示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
背景
需要用戶頭像(3個)右邊部分疊層展示,并且支持循環(huán)滾動
實現(xiàn)
改變dom上綁定的樣式id,論循替換
<template> <div class="slider-headimg"> <div class="out"> <div class="inner"> <div class="img" ref="headimgList" v-for="(item,index) in sliderHeadimgList" :key="index"> <img :src="item.headImgUrl"> </div> </div> </div> </div> </template> <script> export default { props: { sliderHeadimgList: { type: Array, default: () => [] } }, data () { return { timer: null, // 定義位置數(shù)組 idArr: ['first', 'second', 'right', 'last'] } }, mounted () { this.init() }, destroyed () { if (this.timer) { clearInterval(this.timer) } }, methods: { init () { // 初始化圖片位置,根據(jù)id不同,初始化樣式 var img = this.$refs.headimgList img[0].id = this.idArr[0] img[1].id = this.idArr[1] img[3].id = this.idArr[3] for (let i = 0; i < (this.sliderHeadimgList.length - 4); i++) { this.idArr.splice(3, 0, 'left') } this.initialize() // 定時器圖片輪播 this.timer = setInterval(this.next, 1000) }, next () { // 將位置數(shù)組的最后一個元素刪除,并將刪除元素添加到位置數(shù)組第一個 this.idArr.unshift(this.idArr.pop()) this.initialize() }, // 將位置數(shù)組元素作為id賦值給img,達(dá)到輪播效果 initialize () { var img = this.$refs.headimgList for (var i = 0; i < img.length; i++) { img[i].id = this.idArr[i] } } } } </script> <style lang="less"> .slider-headimg { position: relative; display: flex; align-items: center; width: 200px; padding-bottom: 55px; margin-right: 10px; } .out { width: 100%; height: 100%; position: relative; .inner { width: 100%; .img { width: 48px; height: 48px; position: absolute; transition: 0.3s; display: flex; border-radius: 50%; border: 1px solid #fff; img { width: 100%; height: 100%; border-radius: 50%; } } } //設(shè)置id樣式 #last { display: flex; transform: translateX(48px); z-index: 3; opacity: 1; } #first { display: flex; transform: translateX(96px); z-index: 2; opacity: 1; } #second { display: flex; transform: translateX(144px); z-index: 1; opacity: 1; } #left { display: none; transform: translateX(-48px); z-index: 1; opacity: 0; } #right { display: flex; transform: translateX(240px); z-index: 1; opacity: 0; } } </style>
以上就是JS實現(xiàn)頭像循環(huán)滾動示例的詳細(xì)內(nèi)容,更多關(guān)于JS頭像循環(huán)滾動的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
javascript addBookmark 加入收藏 多瀏覽器兼容
不錯的加入收藏代碼,加入了對一些常見瀏覽器的判斷,更好的體現(xiàn)用戶體驗,兼容了ie,firefox.2009-08-08JavaScript之DOM_動力節(jié)點Java學(xué)院整理
由于HTML文檔被瀏覽器解析后就是一棵DOM樹,要改變HTML的結(jié)構(gòu),就需要通過JavaScript來操作DOM。始終記住DOM是一個樹形結(jié)構(gòu)。2017-07-07深入了解Hybrid App技術(shù)的相關(guān)知識
這篇文章主要介紹了深入了解Hybrid App技術(shù)的相關(guān)知識,Hybrid App(混合模式移動應(yīng)用)是指介于web-app、native-app這兩者之間的app,兼具" Native App良好用戶交互體驗的優(yōu)勢 "和" Web App跨平臺開發(fā)的優(yōu)勢 ",需要的朋友可以參考下2019-07-07JS逆向之?webpack?打包站點實戰(zhàn)原理分享
本文主要介紹了JS逆向之webpack打包站點實戰(zhàn)原理分享,webpack是前端程序員用來進(jìn)行打包JS的技術(shù),打包之后的代碼特征非常明顯,更多相關(guān)知識需要的小伙伴可以參考下面文章詳細(xì)內(nèi)容2022-06-06