微信小程序可长按移动控件,供大家参考,具体内容如下
–包含超出边界监测,性能不够理想【原因:setData在毫秒级刷新时会极大程度影响渲染性能】
Javascript
Page({ /** * 页面的初始数据 */ data: { //浮动按钮坐标 flow_y: 130, flow_x: 20, pre_y:0, pre_x:0, //标记移动 moveFlag: false, //标记控件是否可放置 canNotPlace: false, imgSrc:"", }, //长按按钮移动控件 longPress: function (e) { console.log(e) this.setData({ moveFlag: true, pre_x:e.touches[0].clientX, pre_y:e.touches[0].clientY, }) // console.log(e) console.log("begin:(", this.data.flow_x, this.data.flow_y, ")") // this.setData({ // flow_x: 1334-e.touches[0].pageX, // 获取触摸时的原点 // flow_y: 750-e.touches[0].pageY, // }) //console.log(startX) }, // 触摸结束事件 touchEnd: function (e) { this.setData({ moveFlag: false }) // console.log("flow:(", this.data.flow_x, this.data.flow_y, ")") //监测按钮放置区域 if (!((this.data.flow_x < 730) && (this.data.flow_x > 20))&&((this.data.flow_y < 1150) && (this.data.flow_y > 130))) { this.setData({ flow_x: 20, // 转换rpx flow_y: 130, }) } // this.setData({ // flow_x: 20, // 转换rpx // }) }, touchMove: function (e) { //根据move差值动态布局 if (this.data.moveFlag) { // console.log("page:(", e.touches[0].pageX, e.touches[0].pageY, ")") // console.log(move_x,move_y) var x =this.data.flow_x -(e.touches[0].clientX-this.data.pre_x)*2 var y =this.data.flow_y -(e.touches[0].clientY-this.data.pre_y)*2 this.setData({ flow_x: x, // 转换rpx flow_y: y, }) // console.log(x,y) // this.setData({ // flow_x: x, // 转换rpx // flow_y: y, // }) if (!(((x < 730) && (x > 20))&&((y < 1000) && (y > 130)))) { this.setData({ canNotPlace: true, }) } else { this.setData({ canNotPlace: false, }) } this.setData({ pre_x:e.touches[0].clientX, pre_y:e.touches[0].clientY, }) } }, catchtouchmove: function () { //防止蒙层触摸穿透 }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { wx.hideLoading() }, /** * 生命周期函数--监听页面显示 */ onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { this.getArticle() }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { } })
WXSS
.follow_icon{ position: fixed; /* margin: 0 10rpx; */ width:70rpx; height:70rpx; bottom: var(--flow_y--); right: var(--flow_x--); z-index: 1001; } /*mask*/ .drawer_screen { width: 100%; height: 100%; position: fixed; top: 0; left: 0; z-index: 5; background: #000; opacity: 0.5; overflow: hidden; }
WXML
<!-- 刷新按钮 --> <!-- <view bindtap='getArticle' style="opacity:0.8"> --> <view catchtouchmove="catchtouchmove" ><image bindtap='getArticle' bindlongpress="longPress" bindtouchmove='touchMove' bindtouchend="touchEnd" style="--flow_y--:{{flow_y}}rpx;--flow_x--:{{flow_x}}rpx;" class="follow_icon" src="/UploadFiles/2021-04-02/{{imgSrc}}">为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
2024年11月19日
2024年11月19日
- 好薇2024《兵哥哥》1:124K黄金母盘[WAV+CUE]
- 胡歌.2006-珍惜(EP)【步升大风】【FLAC分轨】
- 洪荣宏.2014-拼乎自己看【华特】【WAV+CUE】
- 伊能静.1999-从脆弱到勇敢1987-1996精选2CD【华纳】【WAV+CUE】
- 刘亮鹭《汽车DJ玩主》[WAV+CUE][1.1G]
- 张杰《最接近天堂的地方》天娱传媒[WAV+CUE][1.1G]
- 群星《2022年度发烧天碟》无损黑胶碟 2CD[WAV+CUE][1.4G]
- 罗文1983-罗文甄妮-射雕英雄传(纯银AMCD)[WAV+CUE]
- 群星《亚洲故事香港纯弦》雨果UPMAGCD2024[低速原抓WAV+CUE]
- 群星《经典咏流传》限量1:1母盘直刻[低速原抓WAV+CUE]
- 庾澄庆1993《老实情歌》福茂唱片[WAV+CUE][1G]
- 许巍《在别处》美卡首版[WAV+CUE][1G]
- 林子祥《单手拍掌》华纳香港版[WAV+CUE][1G]
- 郑秀文.1997-我们的主题曲【华纳】【WAV+CUE】
- 群星.2001-生命因爱动听电影原创音乐AVCD【MEDIA】【WAV+CUE】