vue点击图片放大(可左右切换,旋转等多种效果)

这个插件功能非常强大,支持图片多种效果,vue项目用它就对了.

第一步安装依赖

npm install v-viewer --save

第二步在main.js中导入

import Viewer from 'v-viewer'
import 'viewerjs/dist/viewer.css'
Vue.use(Viewer)
Viewer.setDefaults({
  Options: {
    'inline': true, // 启用 inline 模式
    'button': true, // 显示右上角关闭按钮
    'navbar': true, // 显示缩略图导航
    'title': true, // 显示当前图片的标题
    'toolbar': true, // 显示工具栏
    'tooltip': true, // 显示缩放百分比
    'movable': true, // 图片是否可移动
    'zoomable': true, // 图片是否可缩放
    'rotatable': true, // 图片是否可旋转
    'scalable': true, // 图片是否可翻转
    'transition': true, // 使用 CSS3 过度
    'fullscreen': true, // 播放时是否全屏
    'keyboard': true, // 是否支持键盘
    'url': 'data-source' // 设置大图片的 url
  }
})

第三步看下完整vue代码

<template>
  <viewer :images="image">
    <img :src="item.src"  v-for="(item,index) in list" :key="index"/>
  </viewer>
</template>

<script>
export default {
  data() {
    return {
	  list:[
		{src:require('@/assets/1.jpg')},
		{src:require('@/assets/2.jpg')}
	  ]
    };
  },
};
</script>

 最后看一下效果图


在百转柔肠间,一天天地冷酷起来!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以使用Vue.js来实现点击图片放大并且在超出时隐藏的效果。具体实现方法如下: 1. 在Vue的`data`选项中添加一个`showImage`属性,用于表示当前是否需要显示放大图片,初始值为`false`。 ```javascript data() { return { showImage: false } } ``` 2. 在模板中,使用`v-if`指令来根据`showImage`属性的值来显示或隐藏放大图片。同时,使用`v-on`指令来监听图片点击事件,并在点击时将`showImage`属性的值设置为`true`。 ```html <template> <div> <img src="..." v-on:click="showImage = true"> <div class="overlay" v-if="showImage" v-on:click="showImage = false"> <img src="..." class="enlarged-image"> </div> </div> </template> ``` 3. 在CSS中,使用绝对定位和`z-index`属性来将放大图片覆盖在原始图片上,并使用`opacity`属性来设置遮罩层的透明度。 ```css .overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); z-index: 1; } .enlarged-image { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 100%; max-height: 100%; z-index: 2; } .overlay.hidden { display: none; } ``` 在上面的代码中,我们使用`position: fixed`将遮罩层固定在页面上,使用`z-index`属性将放大图片覆盖在遮罩层上,并使用`opacity`属性设置遮罩层的透明度。同时,我们使用`transform: translate(-50%, -50%)`将放大图片居中显示,使用`max-width`和`max-height`属性来限制图片的最大宽度和高度。最后,我们使用`.hidden`类来在超出时隐藏遮罩层和放大图片。 这样,当用户点击图片时,就会显示放大图片,并在超出时自动隐藏。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值