vue实现点击图片放大效果


Posted in Javascript onAugust 15, 2017

本文实例为大家分享了vue点击图片放大展示的具体代码,供大家参考,具体内容如下

1.建立子组件,来实现图片方法功能: BigImg.vue

<template>
  <!-- 过渡动画 -->
  <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() {



// 发送事件




this.$emit('clickit')



}


}

}
</script>
<style scoped>

/*动画*/

.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;

}

/*不限制图片大小,实现居中*/

.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;



// 获取当前图片地址



this.imgSrc = e.currentTarget.src;


},


viewImg(){



this.showImg = false;


},

},

watch: {},
}
</script>
<style>
</style>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
juqery 学习之六 CSS--css、位置、宽高
Feb 11 Javascript
Ajax提交与传统表单提交的区别说明
Feb 07 Javascript
滚动条响应鼠标滑轮事件实现上下滚动的js代码
Jun 30 Javascript
ECMAScript6函数剩余参数(Rest Parameters)
Jun 12 Javascript
基于javascript实现页面加载loading效果
Sep 15 Javascript
JavaScript中的splice方法用法详解
Jul 20 Javascript
JavaScript实现使用Canvas绘制图形的基本教程
Oct 27 Javascript
angularjs 表单密码验证自定义指令实现代码
Oct 27 Javascript
JavaScript设计模式之装饰者模式定义与应用示例
Jul 25 Javascript
vue-cli3 项目从搭建优化到docker部署的方法
Jan 28 Javascript
深入了解Vue.js 混入(mixins)
Jul 23 Javascript
Vue 实现创建全局组件,并且使用Vue.use() 载入方式
Aug 11 Javascript
jquery获取链接地址和跳转详解(推荐)
Aug 15 #jQuery
JavaScript获取tr td 的三种方式全面总结(推荐)
Aug 15 #Javascript
全面解析jQuery中的$(window)与$(document)的用法区别
Aug 15 #jQuery
Vue组件通信实践记录(推荐)
Aug 15 #Javascript
js移动端事件基础及常用事件库详解
Aug 15 #Javascript
js实现移动端轮播图效果
Dec 09 #Javascript
JavaScript递归算法生成树形菜单
Aug 15 #Javascript
You might like
PHP中数据类型转换的三种方式
2015/04/02 PHP
JavaScript 编程引入命名空间的方法
2007/06/29 Javascript
JQuery与JSon实现的无刷新分页代码
2011/09/13 Javascript
获取offsetTop和offsetLeft值的js代码(兼容)
2013/04/16 Javascript
jquery仿搜索自动联想功能代码
2014/05/23 Javascript
用js代码和插件实现wordpress雪花飘落效果的四种方法
2014/12/15 Javascript
js实现的奥运倒计时时钟效果代码
2015/12/09 Javascript
JavaScript函数中关于valueOf和toString的理解
2016/06/14 Javascript
简单谈谈ES6的六个小特性
2016/11/18 Javascript
详解jQuery中的事件
2016/12/14 Javascript
微信小程序支付前端源码
2018/08/29 Javascript
vscode下vue项目中eslint的使用方法
2019/01/13 Javascript
vue模仿网易云音乐的单页面应用
2019/04/24 Javascript
关于layui的动态图标不显示的解决方法
2019/09/04 Javascript
[02:09]抵达西雅图!中国军团加油!
2014/07/07 DOTA
python生成器的使用方法
2013/11/21 Python
分享一下Python 开发者节省时间的10个方法
2015/10/02 Python
python编程开发之类型转换convert实例分析
2015/11/13 Python
python生成器表达式和列表解析
2016/03/10 Python
神经网络(BP)算法Python实现及应用
2018/04/16 Python
Python 利用切片从列表中取出一部分使用的方法
2019/02/01 Python
pymongo中group by的操作方法教程
2019/03/22 Python
python如何解析配置文件并应用到项目中
2019/06/27 Python
给Django Admin添加验证码和多次登录尝试限制的实现
2020/07/26 Python
如何使用Python调整图像大小
2020/09/26 Python
python中os.remove()用法及注意事项
2021/01/31 Python
h5使用canvas画布实现手势解锁
2019/01/04 HTML / CSS
美国女性运动零售品牌:Lady Foot Locker
2017/05/12 全球购物
欧洲最大的品牌水上运动服装和设备在线零售商:Wuituit Outlet
2018/05/05 全球购物
Perfume’s Club德国官网:在线购买香水
2019/04/08 全球购物
自考毕业生自我鉴定
2013/11/04 职场文书
大学社团计划书
2014/05/01 职场文书
志愿者宣传口号
2014/06/17 职场文书
早上好问候语大全
2015/11/10 职场文书
Spring Boot 整合 Apache Dubbo的示例代码
2021/07/04 Java/Android
电脑关机速度很慢怎么办 提升电脑关机速度设置教程
2022/04/08 数码科技