Vue實(shí)現(xiàn)類似Spring官網(wǎng)圖片滑動(dòng)效果方法
先來看一下Spring官網(wǎng)首頁的一個(gè)圖片滑動(dòng)顯示效果

可以看到, 隨著鼠標(biāo)的滑動(dòng),綠色圖片和灰色圖片可以無縫的在鼠標(biāo)倆兩邊切換顯示。
顯示這樣的效果其實(shí)很簡單,利用固定定位保證兩張圖片在同一位置下, 我們可以將灰色圖片當(dāng)做背景層圖片,然后根據(jù)獲取到的實(shí)時(shí)X軸坐標(biāo), 動(dòng)態(tài)改變綠色圖片的寬度, 隱藏超出X軸坐標(biāo)的部分, 就可以達(dá)到這樣的效果, 簡單來說, 這效果就是動(dòng)態(tài)改變上層圖片的寬度。
實(shí)現(xiàn)效果:

我這邊選擇了兩張同樣大小的KDA卡莎的圖片, 將金色圖作為背景圖,暗黑圖作為左側(cè)圖, 用了Vue的mousemove來獲取X軸坐標(biāo)值, 并通過監(jiān)聽坐標(biāo)軸變化來實(shí)時(shí)改變左側(cè)圖片的寬度。
鼠標(biāo)部分, 簡化了Spring官網(wǎng)上鼠標(biāo)位置出軸承的顯示, 采用了cursor: ew-resize樣式, 使得鼠標(biāo)看起來可以左右滑動(dòng)。
代碼粘貼
<template>
<div class="scroll">
<div class="container" @mousemove="mousemove">
<div class="base"></div>
<div class="left" ref="left">
<img src="../../static/image/kda-karsa.jpg" alt="">
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
posX: 0
}
},
methods: {
mousemove(e) {
// 獲取x 坐標(biāo)
this.posX = e.offsetX
}
},
watch: {
posX(curX) {
this.$refs.left.style.width = `${curX}px`
}
}
}
</script>
<style lang="scss" scoped>
.scroll{
.container{
width: 960px;
height: 540px;
background-color: #cccccc;
position: relative;
cursor: ew-resize;
.base{
position: absolute;
width: 960px;
height: 540px;
top: 0;
left: 0;
background: url('../../static/image/kda-karsa-golden.jpg') no-repeat;
background-size: 100%;
}
.left{
position: absolute;
width: 480px;
height: 540px;
overflow: hidden;
top: 0;
left: 0;
img{
width: 960px;
height: 540px;
}
}
}
}
</style>
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
vue中nextTick函數(shù)和react類似實(shí)現(xiàn)代碼
Vue 3 中的 nextTick 主要通過 Promise 實(shí)現(xiàn)異步調(diào)度,返回一個(gè) Promise 對(duì)象,這篇文章主要介紹了vue中nextTick函數(shù)和react類似實(shí)現(xiàn)代碼,需要的朋友可以參考下2024-04-04
vue實(shí)現(xiàn)點(diǎn)擊導(dǎo)航欄滾動(dòng)頁面到指定位置的功能(推薦)
這篇文章主要介紹了vue實(shí)現(xiàn)點(diǎn)擊導(dǎo)航欄滾動(dòng)頁面到指定位置的功能(推薦),步驟一是是通過獲取不同板塊的滾輪高度,步驟二通過編寫執(zhí)行滾動(dòng)操作的函數(shù),結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11
vue 導(dǎo)航守衛(wèi)和axios攔截器有哪些區(qū)別
這篇文章主要介紹了vue 導(dǎo)航守衛(wèi)和axios攔截器有哪些區(qū)別,幫助大家更好的理解和使用vue,感興趣的朋友可以了解下2020-12-12
vite2.0+vue3移動(dòng)端項(xiàng)目實(shí)戰(zhàn)詳解
這篇文章主要介紹了vite2.0+vue3移動(dòng)端項(xiàng)目實(shí)戰(zhàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
Vue使用element-ui實(shí)現(xiàn)菜單導(dǎo)航
這篇文章主要為大家詳細(xì)介紹了Vue使用element-ui實(shí)現(xiàn)菜單導(dǎo)航,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
Vue2+element-ui實(shí)現(xiàn)面包屑導(dǎo)航
這篇文章主要為大家詳細(xì)介紹了Vue2+element-ui使用面包屑導(dǎo)航的正確姿勢(shì),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04

