輪播(css+js)

目錄

1.實現效果

2.基礎代碼演示

2.1js代碼

2.1css樣式

2.3實現效果

3.實現點擊切換

3.1給button添加點擊事件

3.2效果圖如下

3.3發現問題

3.3.1不循環

3.3.2循環


1.實現效果

2.基礎代碼演示

2.1js代碼

 <div class="out-box"><div class="test-swiper"><div class="swiper-box"><div class="swiper-item" v-for="(item,index) in 7" :key="index"><img src="" alt=""><p>學習+積累</p></div></div></div><button class="button-one one">上一張</button><button class="button-one two">下一張</button></div>

2.1css樣式

.out-box{position: relative;width: 100%;.test-swiper{background-color: #d3d8e2;width: 1200px;margin:0 auto;height: 500px;position: relative;overflow: hidden;.swiper-box{position: absolute;display: flex;.swiper-item{width: 400px;height: 400px;background-color: #B7CBEA;margin:50px 100px;}}}.button-one{background-color: rgb(174, 165, 166);position: absolute;top: 50%;width: 50px;height: 50px;border-radius: 100%;}.one{left: 430px;}.two{right:430px;}
}

2.3實現效果

3.實現點擊切換

3.1給button添加事件,transform和切換效果

<div class="out-box"><div class="test-swiper"><div class="swiper-box" :style="{transform:`translateX(${translateXtest}px)`,transition: 'transform 0.5s ease-in-out' }"><div class="swiper-item" v-for="(item,index) in testList" :key="index"><img src="" alt=""><p>學習+積累</p></div></div></div><button class="button-one one" @click="onPre">上一張</button><button class="button-one two" @click="onNext">下一張</button>
</div>export defatult{data(){return{ testList:[{},{},{},{}]testIndex:0}}
}computed: {translateXtest(){// 計算需要移動的距離return -this.testIndex * (400 + 200);},
}onPre(){if(this.testIndex>0){ this.testIndex--}
},
onNext(){if(this.testIndex<this.testList.length-1){ this.testIndex++}
}

3.2效果圖如下

3.3發現問題

發現數組長度只有3,當觸發最后一次onNext操作時候,出現空白,如何解決

3.3.1不循環

一次顯示2張圖片,添加條件testIndex<testList.length-2

onNext(){

? ? ? if(this.testIndex<this.testList.length-2){this.testIndex++}

? ? }

3.3.2循環

可以當到最后顯示testList最后一個數據時,讓數組拼接

onNext(){this.testIndex++if(this.testIndex>this.testList.length){this.testList=this.testList.concat(this.testList)}
}

4.完整代碼

<div class="out-box"><div class="test-swiper"><div class="swiper-box" :style="{ transform:`translateX(${translateXtest}px)`,transition: 'transform 0.5s ease-in-out' }"><div class="swiper-item" v-for="(item,index) in testList" :key="index"><img src="" alt=""><p>學習+積累{{ index }}</p></div></div></div><button class="button-one one" @click="onPrev">上一張</button><button class="button-one two" @click="onNext">下一張</button>
</div>export defatult{data(){return{ testList:[{},{},{},{}]testIndex:0}}
}computed: {translateXtest(){// 計算需要移動的距離return -this.testIndex * (400 + 200);},
}onPre(){if(this.testIndex>0){ this.testIndex--}
},
onNext(){if(this.testIndex<this.testList.length-2){this.testIndex++}
}.out-box{position: relative;width: 100%;.test-swiper{background-color: #d3d8e2;width: 1200px;margin:0 auto;height: 500px;position: relative;overflow: hidden;.swiper-box{position: absolute;display: flex;.swiper-item{width: 400px;height: 400px;background-color: #B7CBEA;margin:50px 100px;}}}.button-one{background-color: rgb(174, 165, 166);position: absolute;top: 50%;width: 50px;height: 50px;border-radius: 100%;}.one{left: 430px;}.two{right:430px;}
}

如果有好的循環方式,歡迎留言

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/62736.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/62736.shtml
英文地址,請注明出處:http://en.pswp.cn/web/62736.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

簡單的JavaWeb開發示例

以下是一個簡單的JavaWeb開發示例&#xff0c;包含一個使用Servlet和JSP實現的簡單網頁計數器功能&#xff0c;展示了基本的JavaWeb項目結構以及相關代碼邏輯。 1. 項目搭建與環境準備 開發工具&#xff1a;可以使用Eclipse、IntelliJ IDEA等集成開發環境&#xff0c;這里以I…

fastadmin框架同時使用 阿里云oss和阿里云點播

背景 項目的實際需求中既要用到阿里云oss產品又用到阿里云點播系統&#xff0c;實現完美的統一。設置兩個地址downUrl&#xff0c;thirdCode。分別代表阿里云oss上傳路徑和阿里云點播系統vId。 實現 默認框架你已經集成好阿里云oss集成工作&#xff0c;前端html頁面實現 <…

優秀的3d建模是數據可視化的視覺核心1

增強視覺效果&#xff1a;3D建模通過創建三維立體圖像&#xff0c;為觀眾提供了更為真實和直觀的視覺體驗。相比于傳統的二維圖表和圖形&#xff0c;3D模型能夠更準確地展示復雜數據之間的空間關系&#xff0c;使數據可視化大屏上的信息更加生動和易于理解。 提升信息傳達效率&…

flink sink kafka的事務提交現象猜想

現象 查看flink源碼時 sink kafka有事務提交機制&#xff0c;查看源碼發現是使用兩階段提交策略&#xff0c;而事務提交是checkpoint完成后才執行&#xff0c;那么如果checkpoint設置間隔時間比較長時&#xff0c;事務未提交之前&#xff0c;后端應該消費不到數據&#xff0c…

leetcode 3224. 使差值相等的最少數組改動次數

題目鏈接&#xff1a;3224. 使差值相等的最少數組改動次數 題目&#xff1a; 給你一個長度為 n 的整數數組 nums &#xff0c;n 是偶數 &#xff0c;同時給你一個整數 k 。 你可以對數組進行一些操作。每次操作中&#xff0c;你可以將數組中任一元素替換為 0 到 k 之間的任一…

Y3編輯器文檔4:觸發器1(對話、裝備、特效、行為樹、排行榜、不同步問題)

文章目錄 一、觸發器簡介1.1 觸發器界面1.2 ECA語句編輯及快捷鍵1.3 參數設置1.4 變量設置1.5 實體觸發器1.6 函數庫與觸發器復用 二、觸發器的多層結構2.1 子觸發器&#xff08;在游戲內對新的事件進行注冊&#xff09;2.2 觸發器變量作用域2.3 復合條件2.4 循環2.5 計時器2.6…

前端WebSocket應用——聊天實時通信的基本配置

使用 WebSocket 實現實時通信的 Vue 應用 前言1. WebSocketService 類 1.1 類屬性1.2 構造函數和連接初始化1.3 WebSocket 連接1.4 事件處理方法1.5 發送和關閉 WebSocket 消息1.6 狀態查詢與回調注冊1.7 完整代碼 2. 在 Vue 組件中使用 WebSocketService 2.1 定義 WebSocket …

【開源】A065—基于SpringBoot的庫存管理系統的設計與實現

&#x1f64a;作者簡介&#xff1a;在校研究生&#xff0c;擁有計算機專業的研究生開發團隊&#xff0c;分享技術代碼幫助學生學習&#xff0c;獨立完成自己的網站項目。 代碼可以查看項目鏈接獲取??&#xff0c;記得注明來意哦~&#x1f339; 贈送計算機畢業設計600個選題ex…

基于python實現自動化的驗證碼識別:探索與實踐

基于python實現自動化的驗證碼識別&#xff1a;探索與實踐 一、驗證碼的類型及特點&#xff08;一&#xff09;圖像驗證碼&#xff08;二&#xff09;短信驗證碼&#xff08;三&#xff09;語音驗證碼 二、驗證碼識別的方法*&#xff08;一&#xff09;傳統圖像處理方法&#x…

Vue vs. React:兩大前端框架的深度對比與分析(一)

前言 在當今快速發展的前端領域中&#xff0c;Vue和React作為兩個備受矚目的前端框架&#xff0c;已經成為許多開發者的首選。這兩個框架憑借其出色的設計和強大的功能&#xff0c;在構建現代化、高效性能的Web應用方面扮演著重要角色。 Vue和React都以其獨特的特點吸引了眾多開…

windows安裝使用conda

在Windows系統上安裝和使用Conda的詳細步驟如下&#xff1a; 一、下載Conda安裝包 訪問Conda的官方網站Anaconda | The Operating System for AI&#xff0c;點擊“Downloads”按鈕。在下載頁面&#xff0c;選擇適合您系統的安裝包。通常&#xff0c;對于Windows系統&#xf…

websocket 服務 pinia 全局配置

websocket 方法類 // stores/webSocketStore.ts import { defineStore } from "pinia";interface WebSocketStoreState {ws: WebSocket | null; // WebSocket 實例callbacks: ((message: string) > void)[]; // 消息回調函數列表connected: boolean; // 連接狀態…

Ariba Procurement: Administration_Cloud Basics

# SAP Ariba Procurement: Administration_Cloud Basics 認識Ariba Cloud SAP Ariba Procurement 是一個云計算平臺… The Ariba Cloud 平臺需要簡單理解的概念: Datacenter數據中心:SAP Ariba在世界各地有許多數據中心。這些數據中心構成了Ariba云的基本物理基礎設施。 …

vulnhub靶場【shenron】--1

前言 靶機&#xff1a;shenron-1 攻擊&#xff1a;kali 都采用虛擬機&#xff0c;網卡為橋接模式 主機發現 使用arp-scan -l或netdiscover -r 192.168.1.1/24掃描 信息收集 使用nmap掃描端口 網站信息探測 查看頁面&#xff0c;發現是apache2的默認界面&#xff0c;查看…

等保2.0數據庫測評之SQL server數據庫測評

一、SQL server數據庫介紹 SQL server美國Microsoft公司推出的一種關系型數據庫系統。SQL Server是一個可擴展的、高性能的、為分布式客戶機/服務器計算所設計的數據庫管理系統。 本次安裝環境為Windows10專業版操作系統&#xff0c;數據庫版本為Microsoft SQL Server 2019 (…

無人機之報警器的工作原理!

一、電量監測技術 電量監測是無人機電量指示和報警功能的基礎。通過實時監測無人機的電池電量&#xff0c;系統能夠準確判斷電池的剩余使用時間&#xff0c;并在電量不足時發出報警。電量監測技術通常包括以下幾個方面&#xff1a; 電壓檢測&#xff1a;無人機電池內部通常配…

【pyspark學習從入門到精通23】機器學習庫_6

目錄 分割連續變量 標準化連續變量 分類 分割連續變量 我們經常處理高度非線性的連續特征&#xff0c;而且只用一個系數很難擬合到我們的模型中。 在這種情況下&#xff0c;可能很難只通過一個系數來解釋這樣一個特征與目標之間的關系。有時&#xff0c;將值劃分到離散的桶中…

解密時序數據庫的未來:TDengine Open Day技術沙龍精彩回顧

在數字化時代&#xff0c;開源已成為推動技術創新和知識共享的核心力量&#xff0c;尤其在數據領域&#xff0c;開源技術的涌現不僅促進了行業的快速發展&#xff0c;也讓更多的開發者和技術愛好者得以參與其中。隨著物聯網、工業互聯網等技術的廣泛應用&#xff0c;時序數據庫…

QT 使用共享內存 實現進程間通訊

QSharedMemory&#xff1a;如果兩個進程運行在同一臺機器上&#xff0c;且對性能要求非常高&#xff08;如實時數據共享、圖像渲染等&#xff09;&#xff0c;建議使用共享內存。 優點&#xff1a; 高性能&#xff1a; 共享內存是進程間通信的最快方式之一&#xff0c;因為數…

在Scala中對隱式轉換格式與作用

隱式對象 格式&#xff1a;implicit object 作用&#xff1a;給函數的默認參數提供隱式值 object Scala12______10 { // case class DataBase(driver: String, url: String) // // implicit object mySql extends DataBase("mysql", "localhost:300") //…