微信小程序“摇一摇”的实例代码


Posted in Javascript onJuly 20, 2017

微信小程序并没有提供摇一摇API接口,但是提供了一个重力感应的API 「wx.onAccelerometerChange(CALLBACK)」,我们可以用这个方法来模拟微信摇一摇功能,代码如下:

Page({
  onShow: function () {
    wx.onAccelerometerChange(function (e) {
      console.log(e.x)
      console.log(e.y)
      console.log(e.z)
      if (e.x > 1 && e.y > 1) {
        wx.showToast({
          title: '摇一摇成功',
          icon: 'success',
          duration: 2000
        })
      }
    })
  },
  onHide: function(){
  }
})

但如果小程序需要启用tabbar的话,这样启用重力感应API会使tabbar下面所有页面都会监听到重力感应数据,导致模拟摇一摇在所有页面都能出现摇一摇的结果,这并不是我们想要的,我们只是想在tabbar下其中一个页面允许他获取到重力感应数据,那么就需要我们自己加入一个是否在当前页面的判断,根据判断结果来启用监听重力感应API,代码修改如下:

Page({
  isShow: false,
  onShow: function () {
    var that = this;
    this.isShow = true;
    wx.onAccelerometerChange(function (e) {
      if(!that.isShow){
        return
      }
      console.log(e.x)
      console.log(e.y)
      console.log(e.z)
      if (e.x > 1 && e.y > 1) {
        wx.showToast({
          title: '摇一摇成功',
          icon: 'success',
          duration: 2000
        })
      }
    })
  },
  onHide: function(){
    this.isShow = false;
  }
})

修改以后重新编译预览就达到我们想要的效果了。

总结

以上所述是小编给大家介绍的微信小程序“摇一摇”的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JSQL 批量图片切换的实现代码
May 05 Javascript
js继承的实现代码
Aug 05 Javascript
JSON+JavaScript处理JSON的简单例子
Mar 20 Javascript
图片动画横条广告带上下滚动的JS代码
Oct 25 Javascript
向JavaScript的数组中添加元素的方法小结
Oct 24 Javascript
详解JavaScript的回调函数
Nov 20 Javascript
JavaScript中字符串与Unicode编码互相转换的实现方法
Dec 18 Javascript
jQuery通过deferred对象管理ajax异步
May 20 Javascript
AngularJS 所有版本下载地址
Sep 14 Javascript
JavaScript hasOwnProperty() 函数实例详解
Aug 04 Javascript
基于bootstrop常用类总结(推荐)
Sep 11 Javascript
node.js 模块和其下载资源的镜像设置的方法
Sep 06 Javascript
基于JavaScript实现微信抢红包功能
Jul 20 #Javascript
ReactNative短信验证码倒计时控件的实现代码
Jul 20 #Javascript
基于jQuery实现手风琴菜单、层级菜单、置顶菜单、无缝滚动效果
Jul 20 #jQuery
详解Angular CLI + Electron 开发环境搭建
Jul 20 #Javascript
JavaScript 基础表单验证示例(纯Js实现)
Jul 20 #Javascript
js 事件的传播机制(实例讲解)
Jul 20 #Javascript
详谈for循环里面的break和continue语句
Jul 20 #Javascript
You might like
在线增减.htpasswd内的用户
2006/10/09 PHP
浅谈PHP中Stream(流)
2015/06/08 PHP
PHP直接修改表内容DataGrid功能实现代码
2015/09/24 PHP
Yii实现单用户博客系统文章详情页插入评论表单的方法
2015/12/28 PHP
PHP四种排序算法实现及效率分析【冒泡排序,插入排序,选择排序和快速排序】
2018/04/27 PHP
php数组遍历类与用法示例
2019/05/24 PHP
jquery选择器(常用选择器说明)
2010/09/28 Javascript
JS实现下拉框的动态添加(附效果)
2013/04/03 Javascript
javascript跨域的4种方法和原理详解
2014/04/08 Javascript
IE中图片的onload事件无效问题和解决方法
2014/06/06 Javascript
jQuery源码分析之Callbacks详解
2015/03/13 Javascript
jQuery表格行上移下移和置顶的实现方法
2015/10/08 Javascript
深入浅析AngularJS中的module(模块)
2016/01/04 Javascript
JavaScript监听手机物理返回键的两种解决方法
2017/08/14 Javascript
vue中appear的用法
2017/08/17 Javascript
js实现简单进度条效果
2020/03/25 Javascript
vue-router定义元信息meta操作
2020/12/07 Vue.js
python实现在控制台输入密码不显示的方法
2015/07/02 Python
浅谈Python对内存的使用(深浅拷贝)
2018/01/17 Python
一道python走迷宫算法题
2018/01/22 Python
python中的set实现不重复的排序原理
2018/01/24 Python
浅谈pytorch卷积核大小的设置对全连接神经元的影响
2020/01/10 Python
基于Python实现人脸自动戴口罩系统
2020/02/06 Python
PHP开发工程师面试问题集锦
2012/11/01 面试题
医学生个人求职信范文
2013/09/24 职场文书
临床医学应届生求职信
2013/11/06 职场文书
syb养殖创业计划书
2014/01/09 职场文书
《高尔基和他的儿子》教学反思
2014/04/09 职场文书
党的群众路线教育实践活动个人承诺书
2014/05/22 职场文书
婚内分居协议书范文
2014/11/26 职场文书
邀请函怎么写
2015/01/30 职场文书
2015年基建工作总结范文
2015/05/23 职场文书
比赛主持人开场白
2015/05/29 职场文书
六一文艺汇演主持词
2015/06/30 职场文书
Python中OpenCV实现查找轮廓的实例
2021/06/08 Python
如何Tomcat中使用ipv6地址
2022/05/06 Servers