微信小程序实现点击图片放大预览


Posted in Javascript onOctober 21, 2019

这个强大的API( wx.previewImage() ),接下来我们来讲一下微信小程序中图片点击放大预览的实现步骤!

思路:

1.点击事件

2.放大

3.左右滑动查看上、下一张

在绑定点击事件的时候我们需要同时获取到点击图片的url和这一组数据的ID(通过这个id从数据里面找到你点击的这一组数据然后从中取出这一组图片就可以了)

index.wxml

<view class='topic_answerImg'>
  
 <block wx:for='{{item.answerImg}}' wx:key='index' wx:for-item='answerItem'>
 <image bindtap='topic_preview' data-id='{{item.id}}' data-url='{{answerItem}}' class='topic_answer_itemImg' src='{{answerItem}}'></image>
 </block>
 
</view>

注意:上面获取的ID是这一组数据的id不是这个图片的id

index.wxss

.topic_answerImg{
 width: 100%;
 display: -webkit-box;
 display: -webkit-flex;
 flex-wrap: wrap;
}
.topic_answer_itemImg{
 width: 210rpx;
 height: 210rpx;
 margin-right: 30rpx;
 margin-bottom: 30rpx;
}
.topic_answer_itemImg:nth-of-type(3n){
 margin-right: 0;
}

index,js

//预览图片
 topic_preview: function(e){
 var that = this;
 var id = e.currentTarget.dataset.id;
 var url = e.currentTarget.dataset.url;
 var previewImgArr = [];
 //通过循环在数据链里面找到和这个id相同的这一组数据,然后再取出这一组数据当中的图片
 var data = that.data.topic_recomData;
 for (var i in data) {
 if (id == data[i].id) {
 previewImgArr = data[i].pic;
 }
 }
 wx.previewImage({
 current: url, // 当前显示图片的http链接
 urls: previewImgArr // 需要预览的图片http链接列表
 })
 },

这样就可以点击图片进行预览。

更多图片处理教程请点击下方专题参考学习:

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

Javascript 相关文章推荐
2007/12/23更新创意无限,简单实用(javascript log)
Dec 24 Javascript
一段利用WSH获取登录时间的jscript代码
May 11 Javascript
动态加载图片路径 保持JavaScript控件的相对独立性
Sep 03 Javascript
页面加载完毕后滚动条自动滚动一定位置
Feb 20 Javascript
jQuery+JSON实现AJAX二级联动实例分析
Dec 18 Javascript
JS实现对中文字符串进行utf-8的Base64编码的方法(使其与Java编码相同)
Jun 21 Javascript
jquery删除table当前行的实例代码
Oct 07 Javascript
jquery引入外部CDN 加载失败则引入本地jq库
May 23 jQuery
vue页面切换过渡transition效果
Oct 08 Javascript
微信小程序云开发 搭建一个管理小程序
May 17 Javascript
vue 导航内容设置选中状态样式的例子
Nov 01 Javascript
全面解析Vue中的$nextTick
Dec 24 Vue.js
vue实现Input输入框模糊查询方法
Jan 29 #Javascript
mpvue实现左侧导航与右侧内容的联动
Oct 21 #Javascript
vue项目中常见问题及解决方案(推荐)
Oct 21 #Javascript
vue.js实现左边导航切换右边内容
Oct 21 #Javascript
vue+element树组件 实现树懒加载的过程详解
Oct 21 #Javascript
JavaScript函数IIFE使用详解
Oct 21 #Javascript
vue实现侧边栏导航效果
Oct 21 #Javascript
You might like
用Php编写注册后Email激活验证的实例代码
2013/03/11 PHP
JS模拟多线程
2007/02/07 Javascript
jQuery ui 1.7更新小结
2009/08/15 Javascript
jQuery 动画弹出窗体支持多种展现方式
2010/04/29 Javascript
JQuery AJAX提交中文乱码的解决方案
2010/07/02 Javascript
基于JQUERY的多级联动代码
2012/01/24 Javascript
浮动的div自适应居中显示的js代码
2013/12/23 Javascript
jQuery学习笔记之 Ajax操作篇(一) - 数据加载
2014/06/23 Javascript
JavaScript设计模式之抽象工厂模式介绍
2014/12/28 Javascript
JavaScript生成福利彩票双色球号码
2015/05/15 Javascript
IONIC自定义subheader的最佳解决方案
2016/09/22 Javascript
浅谈Vue.js
2017/03/02 Javascript
微信小程序实现订单倒计时
2020/11/01 Javascript
Vue项目实现简单的权限控制管理功能
2019/07/17 Javascript
解决layui弹框失效的问题
2019/09/09 Javascript
用Golang运行JavaScript的实现示例
2019/11/25 Javascript
基于jquery实现彩色投票进度条代码解析
2020/08/26 jQuery
vue a标签点击实现赋值方式
2020/09/07 Javascript
python批量修改文件编码格式的方法
2018/05/31 Python
python实现自动登录后台管理系统
2018/10/18 Python
Python 中的 import 机制之实现远程导入模块
2019/10/29 Python
Python递归及尾递归优化操作实例分析
2020/02/01 Python
css3发光搜索表单分享
2014/04/11 HTML / CSS
预订全球最佳旅行体验:Viator
2018/03/30 全球购物
英国顶级水晶珠宝零售商之一:Tresor Paris
2019/04/27 全球购物
环境科学专业研究生求职信
2013/10/02 职场文书
教学大赛获奖感言
2014/01/15 职场文书
工艺员岗位职责
2014/02/11 职场文书
迎新晚会策划方案
2014/06/13 职场文书
师德先进个人材料
2014/12/20 职场文书
三年级上册科学教学计划
2015/01/21 职场文书
家长会欢迎词
2015/01/23 职场文书
初中家长意见
2015/06/03 职场文书
使用Golang的channel交叉打印两个数组的操作
2021/04/29 Golang
html5中sharedWorker实现多页面通信的示例代码
2021/05/07 Javascript
nginx内存池源码解析
2021/11/20 Servers