小編給大家分享一下vue如何實(shí)現(xiàn)點(diǎn)擊圖片放大效果,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
成都創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),岐山網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:岐山等地區(qū)。岐山做網(wǎng)站價(jià)格咨詢:18982081108
Vue具體輕量級(jí)框架、簡(jiǎn)單易學(xué)、雙向數(shù)據(jù)綁定、組件化、數(shù)據(jù)和結(jié)構(gòu)的分離、虛擬DOM、運(yùn)行速度快等優(yōu)勢(shì),Vue中頁(yè)面使用的是局部刷新,不用每次跳轉(zhuǎn)頁(yè)面都要請(qǐng)求所有數(shù)據(jù)和dom,可以大大提升訪問(wèn)速度和用戶體驗(yàn)。
vue點(diǎn)擊圖片放大展示的具體代碼,具體內(nèi)容如下
1.建立子組件,來(lái)實(shí)現(xiàn)圖片方法功能: BigImg.vue
<template> <!-- 過(guò)渡動(dòng)畫 --> <transition name="fade"> <div class="img-view" @click="bigImg"> <!-- 遮罩層 --> <div class="img-layer"></div> <div class="img"> <img :src="imgSrc"> </div> </div> </transition> </template> <script> export default { props: ['imgSrc'],//接受圖片地址 methods: { bigImg() { // 發(fā)送事件 this.$emit('clickit') } } } </script> <style scoped> /*動(dòng)畫*/ .fade-enter-active, .fade-leave-active { transition: all .2s linear; transform: translate3D(0, 0, 0); } .fade-enter, .fade-leave-active { transform: translate3D(100%, 0, 0); } /* bigimg */ .img-view { position: inherit; width: 100%; height: 100%; } /*遮罩層樣式*/ .img-view .img-layer { position: fixed; z-index: 999; top: 0; left: 0; background: rgba(0, 0, 0, 0.7); width: 100%; height: 100%; overflow: hidden; } /*不限制圖片大小,實(shí)現(xiàn)居中*/ .img-view .img img { max-width: 100%; display: block; position: absolute; left: 0; right: 0; margin: auto; z-index: 1000; } </style>
2.在父類中使用子組件:
<template xmlns:v-on="http://www.w3.org/1999/xhtml"> <div class="contents"> <div class="group"> <div class="special"> <span v-text="pagedata.subtitle"></span> </div> <span class="text-muted" v-text="pagedata.headline"></span> <div class="group_img"> <!-- 放大圖片 --> <big-img v-if="showImg" @clickit="viewImg" :imgSrc="imgSrc"></big-img> <div class="text" v-text="pagedata.article"></div> <img id="smallImg" :src="pagedata.imgurl" @click="clickImg($event)"> </div> </div> </div> </template> <script> import BigImg from '../../index/moduleStyles/BigImg.vue'; export default { data () { return { showImg:false, imgSrc: '' } }, props: ['pagedata'], computed: {}, components: { 'big-img':BigImg}, methods: { clickImg(e) { this.showImg = true; // 獲取當(dāng)前圖片地址 this.imgSrc = e.currentTarget.src; }, viewImg(){ this.showImg = false; }, }, watch: {}, } </script> <style> </style>
以上是“vue如何實(shí)現(xiàn)點(diǎn)擊圖片放大效果”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
本文標(biāo)題:vue如何實(shí)現(xiàn)點(diǎn)擊圖片放大效果
網(wǎng)頁(yè)路徑:http://muchs.cn/article44/jcpsee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、網(wǎng)站維護(hù)、關(guān)鍵詞優(yōu)化、外貿(mào)建站、微信公眾號(hào)、標(biāo)簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)