简述

本文主要讲述,vue在手机移动端如何实现对小图进行放大查看预览。类似于朋友圈的照片查看。


可用工具

  • 1、npm安装,npm i vue-preview -S
  • 2、使用一些Vue的UI组件框架自带的,如vux、vonic、Mint UI等 自带的preview

效果图

因为图片太jb大了,放在文章中,排版太丑,点击链接,跳转看看吧。
小图模式:(https://img-blog.csdn.net/20180725094952768?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2dlbml1c195eW0=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
大图预览:(https://img-blog.csdn.net/20180725095044337?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2dlbml1c195eW0=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)


实现代码

(一)HTML

<div v-show="listDatas && listDatas.length>0">
<!-- 九宫格小图预览,没张图战三分之一,imgWidth为通过实时手机屏幕获取到图片宽高 --><img class="previewer-demo-img" v-for="(item, index) in listDatas" :src="item.src" width="100" @click="showImgs(index)" :style="{width: imgWidth, height: imgWidth}">
</div>
<div v-show="listDatas && listDatas.length==0"><span style="font-size: 12px;color:#8f8e94;">暂无证明文件</span>
</div>
<div v-transfer-dom><!-- previewer配置(npm i vue-preview) - (或者相关框架组件) --><previewer :list="listDatas" ref="previewer" :options="options"></previewer>
</div>

(二)js

data() {return {imgWidth: '375px',listDatas: [],options: { //需正确配置getThumbBoundsFn (index) {let thumbnail = document.querySelectorAll('.previewer-demo-img')[index];let pageYScroll = window.pageYOffset || document.documentElement.scrollTop;let rect = thumbnail.getBoundingClientRect()return {x: rect.left, y: rect.top + pageYScroll, w: rect.width}}}}
},
mounted() {//根据实际手机屏幕 获取图片宽高this.imgWidth = parseInt((Number(window.screen.width) - 45) / 3) + 'px';
},
methods: {showImgs (index) { //显示特定index的图片,使用refthis.$refs.previewer.show(index)},loaGongkeSearck(searchFlag) { // 获取图片路径,通过base64转换显示。var params = {appealid: this.$route.query.appealid,projid: this.$store.state.core.loginFormInfo.projId,orgid: this.$store.state.core.loginFormInfo.orgid,appcode: this.$store.state.core.loginFormInfo.appcode}this.$http.post(this.HOST+"/online/queryAppeal.do", params,{emulateJSON:true}).then(function(response){if (response.data.data.attach_path && response.data.data.attach_path.length>0) {for (var i = 0; i < response.data.data.attach_path.length; i++) {this.listDatas.push({msrc: 'data:image/jpeg;base64,' + response.data.data.attach_path[i],src: 'data:image/jpeg;base64,' + response.data.data.attach_path[i],w: 900,h: 1200,})}}}}, function(response){})
},
}

结束语

Vue 移动端 previewer实现图片放大预览。


Vue 移动端 previewer实现图片放大预览相关推荐

  1. 微信小程序图片放大预览效果的实现

    效果预览 效果图有点快,但是可以大致看出来效果了.我再给大家描述下吧 一个页面有3张图片,点击其中任意一张都可以放大预览.然后在预览的时候,左右滑动,还可以看另外两张图片. 话不多说,直接上代码 1, ...

  2. jQuery Lightbox图片放大预览

    简介:jQuery Lightbox图片放大预览代码是一款可以在用户点击页面中的小图片时,将该图片的高清版本以Lightbox的方式放大显示在页面的中间,提高用户的体验度. 效果展示 http://h ...

  3. Axure RP9——【图片放大预览效果】

    图片放大预览效果 目录 I.实现效果 II.实现步骤 I.实现效果 一般适用于做电商平台图片的放大预览,以此更方便我们看清内容细节. 鼠标停留在商品大图时,会出现一个预览区域,并且右侧会出现预览区域的 ...

  4. Chrome 扩展程序——Imagus:图片放大预览工具

    主要介绍 Imagus 的功能及应用,Imagus 是一款简单实用的图片放大预览工具. 主要功能 Imagus 的功能非常单一,就是在浏览网页时,当鼠标悬停到一张图片后,会自动放大图片,进行预览,这在 ...

  5. 微信小程序图片放大预览效果的实现,轮播图点击放大预览

    近期很多刚学习小程序的同学,想做哪种图片点击放大,然后可以左右滑动预览的效果.我也特意去研究下,发现直接用微信程序自己的api就可以很方便的实现.今天就来教大家如何实现小程序图片点击放大的效果. 老规 ...

  6. 小程序实现图片放大预览功能

    uniapp 微信 小程序实现图片放大预览功能 实现效果图如下 主要实现代码 <view class="text_img"><image :src="i ...

  7. html js 图片放大效果,JavaScript实现图片放大预览效果

    代码实现: Document .preview-img { position: relative; height: 398px; } .mask { display: none; position: ...

  8. 微信小程序:收藏、客服、分享、加入购物车、图片放大预览

    微信小程序:收藏.客服.分享.加入购物车.图片放大预览 微信小程序包含功能 ·轮播 ·图片放大预览 ·收藏 ·客服 ·加入购物车 在goods_detail下的index.wxml写页面代码 < ...

  9. 微信小程序:previewImage实现图片放大预览效果

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 前言 记录一下做项目的过程中遇到的图片放大预览效果的实现 实现的是点击图片可以放大预览,这个效果在京东淘宝都可以看到 ...

最新文章

  1. 常用的下载文献的地方
  2. TensorFlow全新的数据读取方式:Dataset API入门教程
  3. 07-Armv8-A virtualization
  4. 皇室战争:暗夜女巫重做,去掉亡语机制后,她凉的可能会更快
  5. 美图手机官方正式告别:年中关闭手机业务 手机品牌授权给小米
  6. html page背景图片,html – Fullpage.js背景图片
  7. getconnection java_在MyEclipse用java写的一个GetConnection1.java,用于连接MySQL,却总是出错。(没有财富值了,见谅!)...
  8. Hibernate框架使用教程
  9. [Android实例] 【eoeAndroid社区索引】android开发基础之定位篇
  10. team多网卡绑定、桥接的搭建、tcpdump抓包
  11. 超越前作,实现动漫风格迁移——AnimeGANv2
  12. 《客户反映访问公司网站服务器很慢或打不开》排错思想
  13. 学计算机跨考航天航空,往届生跨考计算机经验
  14. 有汇源上下界最大流和最小流
  15. 用BitBlt实现透明贴图
  16. 人人都会用的矢量设计软件,这6个不可不知道!
  17. 虚拟化之Proxmox VE安装教程
  18. C++版Android实时投屏软件系统源码,安卓手机投屏软件源码,无需root权限
  19. 《干法》— 精华解读
  20. 销售单显示进仓单价的若干问题

热门文章

  1. 2021年建5G基站60万个;中兴遭减持;三大运营商2020年成绩单;电信发布新手机...
  2. 汇编中各寄存器的作用(16位CPU14个,32位CPU16个)和 x86汇编指令集大全(带注释)...
  3. spring5之AOP
  4. Lab6 MPEG音频编码实验——C++代码实现
  5. 高中生也能成为软件达人吗?
  6. 【 失踪人口回归】新·学期
  7. LeetCode第一阶段(一)【数组篇】
  8. 安卓平板升级“果冻豆”:更便利更流畅
  9. 法大大联合清华大学法学院研讨“电子证据与劳动法”
  10. 计算机毕业设计(22)java毕设作品之在线教育视频点播学习系统