微信小程序怎么实现通过双向滑动缩放图片大小
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要介绍"微信小程序怎么实现通过双向滑动缩放图片大小"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"微信小程序怎么实现通过双向滑动缩放图片大小"文章能帮
千家信息网最后更新 2026年11月03日微信小程序怎么实现通过双向滑动缩放图片大小
这篇文章主要介绍"微信小程序怎么实现通过双向滑动缩放图片大小"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"微信小程序怎么实现通过双向滑动缩放图片大小"文章能帮助大家解决问题。
js :
Page({ data: { touch: { distance: 0, scale: 1, baseWidth: null, baseHeight: null, scaleWidth: null, scaleHeight: null } }, touchStartHandle(e) { // 单手指缩放开始,也不做任何处理 if (e.touches.length == 1) { console.log("单滑了") return } console.log('双手指触发开始') // 注意touchstartCallback 真正代码的开始 // 一开始我并没有这个回调函数,会出现缩小的时候有瞬间被放大过程的bug // 当两根手指放上去的时候,就将distance 初始化。 let xMove = e.touches[1].clientX - e.touches[0].clientX; let yMove = e.touches[1].clientY - e.touches[0].clientY; let distance = Math.sqrt(xMove * xMove + yMove * yMove); this.setData({ 'touch.distance': distance, }) }, touchMoveHandle(e) { let touch = this.data.touch // 单手指缩放我们不做任何操作 if (e.touches.length == 1) { console.log("单滑了"); return } console.log('双手指运动开始') let xMove = e.touches[1].clientX - e.touches[0].clientX; let yMove = e.touches[1].clientY - e.touches[0].clientY; // 新的 ditance let distance = Math.sqrt(xMove * xMove + yMove * yMove); let distanceDiff = distance - touch.distance; let newScale = touch.scale + 0.005 * distanceDiff // 为了防止缩放得太大,所以scale需要限制,同理最小值也是 if (newScale >= 2) { newScale = 2 } if (newScale <= 0.6) { newScale = 0.6 } let scaleWidth = newScale * touch.baseWidth let scaleHeight = newScale * touch.baseHeight // 赋值 新的 => 旧的 this.setData({ 'touch.distance': distance, 'touch.scale': newScale, 'touch.scaleWidth': scaleWidth, 'touch.scaleHeight': scaleHeight, 'touch.diff': distanceDiff }) }, load: function (e) { // bindload 这个api是组件的api类似
的onload属性 this.setData({ 'touch.baseWidth': e.detail.width, 'touch.baseHeight': e.detail.height, 'touch.scaleWidth': e.detail.width, 'touch.scaleHeight': e.detail.height }); }}) 然后将新获得的图片宽度和高度赋值给图片即可实现滑动缩放
wxml:
关于"微信小程序怎么实现通过双向滑动缩放图片大小"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
图片
双向
大小
程序
手指
知识
双手
时候
行业
过程
不同
实用
最小
代码
内容
函数
实用性
实际
宽度
属性
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
湖北九亚互联网络科技有限公司
互联网科技工作委员会主任
科技互联网项目
为想互联网科技
奇酷互联网络科技
太原新华互联网科技学校怎么样
中盈科技互联网信息有限公司
河南猎农互联网科技有限公司
互联网媒体平台算高科技产业
广州市恰铎互联网科技有限公司
深圳育鹏互联网科技有限公司招聘
东莞新华互联网科技学校
西安小鹰速贷互联网科技有限公司
伊宁互联网科技做什么的
无锡工业互联网科技有限公司
容联科技互联网电商
银川新华互联网科技学校是国营吗
安徽零酒互联网科技有限公司
河南商务圈互联网科技有限公司
六子台科技互联网展会
涨乐互联网科技
互联网高科技企业
左右互联网络科技
互联网金融监管科技
广州慧亚互联网科技怎么样
金融科技与互联网金融相同和不同
宝灵互联网科技有限公司
速维有品互联网信息科技(苏州)有限公司
广州三三互联网科技有限公司
现代科技的标志之一的互联网