微信小程序实现拖拽功能


Posted in Javascript onSeptember 26, 2019

微信小程序实现拖拽功能

<view class='collectBox' 
  bindtap='addCollect' 
  wx:if="{{write[0]+write[1] > 0}}" 
  bindtouchmove="touchmove" 
  catch:touchmove 
  style="left:{{write[0]}}px;top:{{write[1]}}px;">
  <image src='../../images/icon/addcollect.png'></image>
</view>
// pages/cateDetaile/cateDetaile.js
const app = getApp()
Page({
 
  /**
   * 页面的初始数据
   */
  data: {
    // 拖拽参数
    writePosition: [80, 90], //默认定位参数
    writesize: [0, 0],// X Y 定位
    window: [0, 0], //屏幕尺寸
    write: [0, 0], //定位参数
    scrolltop: 0,//据顶部距离
  },
 
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // 在页面中定义插屏广告
    let that = this;
    that.getSysdata();
  },
  //计算默认定位值
  getSysdata: function () {
    var that = this;
    wx.getSystemInfo({
      success: function (e) {
        that.data.window = [e.windowWidth, e.windowHeight];
        var write = [];
        write[0] = that.data.window[0] * that.data.writePosition[0] / 100;
        write[1] = that.data.window[1] * that.data.writePosition[1] / 100;
        console.log(write,45)
        that.setData({
          write: write
        }, function () {
          // 获取元素宽高
          wx.createSelectorQuery().select('.collectBox').boundingClientRect(function (res) {
            console.log(res.width)
            that.data.writesize = [res.width, res.height];
          }).exec();
        })
      },
      fail: function (e) {
        console.log(e)
      }
    });
  },
  //开始拖拽  
  touchmove: function (e) {
    var that = this;
    var position = [e.touches[0].pageX - that.data.writesize[0] / 2, e.touches[0].pageY - that.data.writesize[1] / 2 - this.data.scrolltop];
    that.setData({
      write: position
    });
  },
  onPageScroll(e) {
    this.data.scrolltop = e.scrollTop;
  },
})

总结

以上所述是小编给大家介绍的微信小程序实现拖拽功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
写的htc的数据表格
Jan 20 Javascript
JS小功能(操作Table--动态添加删除表格及数据)实现代码
Nov 28 Javascript
JS和JQ的event对象区别分析
Nov 24 Javascript
jQuery实现高亮显示的方法
Mar 10 Javascript
JS实现表单中checkbox对勾选中增加边框显示效果
Aug 21 Javascript
jquery html动态添加的元素绑定事件详解
May 24 Javascript
javascript正则表达式之分组概念与用法实例
Jun 16 Javascript
解决vue动态为数据添加新属性遇到的问题
Sep 18 Javascript
vue src动态加载请求获取图片的方法
Oct 17 Javascript
Vue多组件仓库开发与发布详解
Feb 28 Javascript
Nuxt默认模板、默认布局和自定义错误页面的实现
May 11 Javascript
微信小程序使用GoEasy实现websocket实时通讯
May 19 Javascript
vue用BMap百度地图实现即时搜索功能
Sep 26 #Javascript
layui.tree组件的使用以及搜索节点功能的实现
Sep 26 #Javascript
微信小程序点击列表跳转到对应详情页过程解析
Sep 26 #Javascript
vue+element tabs选项卡分页效果
Jun 29 #Javascript
layui实现根据table数据判断按钮显示情况的方法
Sep 26 #Javascript
vue+element表格导出为Excel文件
Sep 26 #Javascript
利用layer实现表单完美验证的方法
Sep 26 #Javascript
You might like
ThinkPHP实现多数据库连接的解决方法
2014/07/01 PHP
php 在线导入mysql大数据程序
2015/06/11 PHP
给PHP开发者的编程指南 第一部分降低复杂程度
2016/01/18 PHP
PHP并发场景的三种解决方案代码实例
2021/02/27 PHP
默认让页面的第一个控件选中的javascript代码
2009/12/26 Javascript
Jquery遍历节点的方法小集
2014/01/22 Javascript
浅析Node.js查找字符串功能
2014/09/03 Javascript
排序算法的javascript实现与讲解(99js手记)
2014/09/28 Javascript
AngularJS入门教程之Hello World!
2014/12/06 Javascript
JavaScript创建一个object对象并操作对象属性的用法
2015/03/23 Javascript
animate 实现滑动切换效果【实例代码】
2016/05/05 Javascript
AngularJS教程之简单应用程序示例
2016/08/16 Javascript
有关文件上传 非ajax提交 得到后台数据问题
2016/10/12 Javascript
微信小程序movable view移动图片和双指缩放实例代码
2017/08/08 Javascript
webpack打包nodejs项目的方法
2018/09/26 NodeJs
iview的table组件自带的过滤器实现
2019/07/12 Javascript
jquery实现下载图片功能
2019/07/18 jQuery
JS实现动态无缝轮播
2020/01/11 Javascript
如何利用javascript接收json信息并进行处理
2020/08/06 Javascript
利用python批量给云主机配置安全组的方法教程
2017/06/21 Python
Python基于递归算法实现的走迷宫问题
2017/08/04 Python
python默认参数调用方法解析
2020/02/09 Python
python实现3D地图可视化
2020/03/25 Python
pandas创建DataFrame的7种方法小结
2020/06/14 Python
python文件操作seek()偏移量,读取指正到指定位置操作
2020/07/05 Python
Python基于内置函数type创建新类型
2020/10/22 Python
Python实现哲学家就餐问题实例代码
2020/11/09 Python
Sneaker Studio捷克:购买运动鞋
2018/07/08 全球购物
华为菲律宾官方网站:HUAWEI Philippines
2021/02/23 全球购物
西安交大自主招生自荐信
2014/01/27 职场文书
企业员工培训感言
2014/02/26 职场文书
大学团日活动新闻稿
2014/09/10 职场文书
2014年最新个人对照检查材料范文
2014/09/25 职场文书
春节随笔
2015/08/15 职场文书
MySQL索引是啥?不懂就问
2021/07/21 MySQL
Python基本知识点总结
2022/04/07 Python