Vue + ElementUI表格内实现图片点击放大效果的两种实现方式

 更新时间:2024年08月12日 14:40:31   作者:思凡念真  
这篇文章主要介绍了Vue + ElementUI表格内实现图片点击放大效果的两种实现方式,第一种使用el-popover弹出框来实现而第二种使用v-viewer插件实现,需要的朋友可以参考下

方式一:使用el-popover弹出框

trigger属性用于设置何时触发Popover(弹出框)属性值有:hover、click、focus 和 manual

style="cursor:pointer":当鼠标放上去时让img标签出现小手状态

<el-table-column label="物品图片" header-align="center" align="center">
  <template slot-scope="scope">
    <el-popover placement="top-start" trigger="click"> <!--trigger属性值:hover、click、focus 和 manual-->
      <a :href="scope.row.goodsImg" rel="external nofollow"  target="_blank" title="查看最大化图片">
        <img :src="scope.row.goodsImg" style="width: 300px;height: 300px">
      </a>
      <img slot="reference" :src="scope.row.goodsImg" style="width: 50px;height: 50px; cursor:pointer">
    </el-popover>
  </template>
</el-table-column>

方式二:使用v-viewer插件

一、安装依赖:在项目目录文件中进入安装

npm install v-viewer --save

二、全局引入:在项目目录下 ——> src文件夹下 ——> main.js进行全局引入

import Vue from 'vue'
import Viewer from 'v-viewer'
import 'viewerjs/dist/viewer.css'
Vue.use(Viewer)
Viewer.setDefaults({
  Options: {
    'inline': true,
    'button': true,
    'navbar': true,
    'title': true,
    'toolbar': true,
    'tooltip': true,
    'movable': true,
    'zoomable': true,
    'rotatable': true,
    'scalable': true,
    'transition': true,
    'fullscreen': true,
    'keyboard': true,
    'url': 'data-source'
  }
})

三、使用:在想要的组件中进行使用

单张图片方式

<viewer>
  <img
    :src="scope.row.goodsImg"
    style="width: 50px;height: 50px; cursor:pointer">
</viewer>
// 或
<div v-viewer>
  <img
    :src="scope.row.goodsImg"
    style="width: 50px;height: 50px; cursor:pointer">
</div>

多张图片方式

<div>
  <viewer :images="signImages">
    <!-- signImages一定要一个数组,否则报错 -->
    <img
      v-for="(src,index) in signImages"
      :src="src"
      :key="index"
      width="50">
  </viewer>
</div>
<!-- signImages数组放在 export default ——> data() ——> return 里面 -->
signImages: [
  'https://ss1.baidu.com/-4o3dSag_xI4khGko9WTAnF6hhy/image/h%3D300/sign=3d9fc10fa3014c08063b2ea53a7a025b/359b033b5bb5c9eac1754f45df39b6003bf3b396.jpg',
  'https://ss0.baidu.com/94o3dSag_xI4khGko9WTAnF6hhy/image/h%3D300/sign=b38f3fc35b0fd9f9bf175369152cd42b/9a504fc2d5628535bdaac29e9aef76c6a6ef63c2.jpg',
  'https://ss1.baidu.com/-4o3dSag_xI4khGko9WTAnF6hhy/image/h%3D300/sign=7ecc7f20ae0f4bfb93d09854334e788f/10dfa9ec8a1363279e1ed28c9b8fa0ec09fac79a.jpg'
],

说明:

名称默认值说明
inlinefalse启用 inline 模式
buttontrue显示右上角关闭按钮
navbartrue显示缩略图导航
titletrue显示当前图片的标题
toolbartrue显示工具栏
tooltiptrue显示缩放百分比
movabletrue图片是否可移动
zoomabletrue图片是否可缩放
rotatabletrue图片是否可旋转
scalabletrue图片是否可翻转
transitiontrue使用 CSS3 过度
fullscreentrue播放时是否全屏
keyboardtrue是否支持键盘
urlsrc设置大图片的 url

参考资料:

https://blog.csdn.net/AdminGuan/article/details/103574434

https://www.cnblogs.com/chenziyu/p/10270934.html

到此这篇关于Vue + ElementUI表格内实现图片点击放大效果的两种方式的文章就介绍到这了,更多相关Vue ElementUI图片点击放大内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue spa应用中的路由缓存问题与解决方案

    vue spa应用中的路由缓存问题与解决方案

    这篇文章主要介绍了vue spa应用中的路由缓存问题与解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • 详解vue之自行实现派发与广播(dispatch与broadcast)

    详解vue之自行实现派发与广播(dispatch与broadcast)

    这篇文章主要介绍了详解vue之自行实现派发与广播(dispatch与broadcast),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • vue项目如何引入公共头部底部

    vue项目如何引入公共头部底部

    这篇文章主要介绍了vue项目如何引入公共头部底部问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • 深入理解Vue router的部分高级用法

    深入理解Vue router的部分高级用法

    这篇文章主要介绍了Vue router的部分高级用法,主要是针对已经有初步了解Vue-router的人,通过本文主要给大家介绍路由元信息,滚动行为以及路由懒加载这几个的使用方法。感兴趣的朋友一起看看吧
    2018-08-08
  • vant-ui AddressEdit地址编辑和van-area的用法说明

    vant-ui AddressEdit地址编辑和van-area的用法说明

    这篇文章主要介绍了vant-ui AddressEdit地址编辑和van-area的用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • 客户端(vue框架)与服务器(koa框架)通信及服务器跨域配置详解

    客户端(vue框架)与服务器(koa框架)通信及服务器跨域配置详解

    本篇文章主要介绍了客户端(vue框架)与服务器(koa框架)通信及服务器跨域配置详解,具有一定的参考价值,有兴趣的可以了解一下
    2017-08-08
  • VUE 更好的 ajax 上传处理 axios.js实现代码

    VUE 更好的 ajax 上传处理 axios.js实现代码

    本篇文章主要介绍了VUE 更好的 ajax 上传处理 axios.js实现代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • vue3 setup语法糖下的定时器的使用与销毁

    vue3 setup语法糖下的定时器的使用与销毁

    如果在组件中需要使用定时器,注意在销毁组件的时候,要对定时器进行销毁,否则时间长了会导致页面卡顿,这篇文章给大家介绍vue3 setup语法糖下的定时器的使用与销毁的知识,感兴趣的朋友一起看看吧
    2024-02-02
  • vue+element项目中过滤输入框特殊字符小结

    vue+element项目中过滤输入框特殊字符小结

    这篇文章主要介绍了vue+element项目中过滤输入框特殊字符小结,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • elementUI中el-table表头和内容全部一行显示完整的方法

    elementUI中el-table表头和内容全部一行显示完整的方法

    最近参与web开发时,让我解决一个elementui控制内容单行显示,下面这篇文章主要给大家介绍了关于elementUI中el-table表头和内容全部一行显示完整的方法,需要的朋友可以参考下
    2023-06-06

最新评论