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


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 相关文章推荐
JS获取IUSR_机器名和IWAM_机器名帐号的密码
Dec 06 Javascript
js实现在文本框光标处添加字符的方法介绍
Nov 24 Javascript
面向对象继承实例(a如何继承b问题)(自写)
Jul 01 Javascript
js select option对象小结
Dec 20 Javascript
浅析js中的浮点型运算问题
Jan 06 Javascript
js实现仿阿里巴巴城市选择框效果实例
Jun 24 Javascript
AngularJS中$interval的用法详解
Feb 02 Javascript
javascript鼠标右键菜单自定义效果
Dec 08 Javascript
JS表格组件神器bootstrap table详解(强化版)
May 26 Javascript
通过jsonp获取json数据实现AJAX跨域请求
Jan 22 Javascript
Angular2管道Pipe及自定义管道格式数据用法实例分析
Nov 29 Javascript
微信小程序实现点击文字页面跳转功能【附源码下载】
Dec 12 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
php模板原理讲解
2013/11/13 PHP
Docker配置PHP开发环境教程
2016/12/21 PHP
PHP实现找出链表中环的入口节点
2018/01/16 PHP
PHP后门隐藏的一些技巧总结
2020/11/04 PHP
Valerio 发布了 Mootools
2006/09/23 Javascript
JavaScript 密码强度判断代码
2009/09/05 Javascript
随鼠标上下滚动的jquery代码
2013/12/05 Javascript
为开发者准备的10款最好的jQuery日历插件
2014/02/04 Javascript
深入理解JavaScript系列(49):Function模式(上篇)
2015/03/04 Javascript
Extjs 点击复选框在表格中增加相关信息行
2016/07/12 Javascript
jQuery插入节点和移动节点用法示例(insertAfter、insertBefore方法)
2016/09/08 Javascript
基于LayUI实现前端分页功能的方法
2017/07/22 Javascript
老生常谈javascript的面向对象思想
2017/08/22 Javascript
从0到1搭建Element的后台框架的方法步骤
2019/04/10 Javascript
vue 解决遍历对象显示的顺序不对问题
2019/11/07 Javascript
JavaScript Image对象实现原理实例解析
2020/08/26 Javascript
一篇文章带你从零快速上手Rollup
2020/09/07 Javascript
python抓取网页内容示例分享
2014/02/24 Python
python使用multiprocessing模块实现带回调函数的异步调用方法
2015/04/18 Python
Python标准模块--ContextManager上下文管理器的具体用法
2017/11/27 Python
python计算列表内各元素的个数实例
2018/06/29 Python
python实现拉普拉斯特征图降维示例
2019/11/25 Python
使用python实现数组、链表、队列、栈的方法
2019/12/20 Python
python GUI库图形界面开发之pyinstaller打包python程序为exe安装文件
2020/02/26 Python
Python web如何在IIS发布应用过程解析
2020/05/27 Python
Python如何爬取qq音乐歌词到本地
2020/06/01 Python
TensorFlow-gpu和opencv安装详细教程
2020/06/30 Python
我看到了用指针调用函数的不同语法形式
2014/07/16 面试题
主键(Primary Key)约束和唯一性(UNIQUE)约束的区别
2013/05/29 面试题
Ajax实现页面无刷新留言效果
2021/03/24 Javascript
关于清明节的演讲稿
2014/09/13 职场文书
幼儿园教师节感谢信
2015/01/23 职场文书
学生会个人总结范文
2015/02/15 职场文书
副总经理岗位职责范本
2015/04/08 职场文书
校车安全管理责任书
2015/05/11 职场文书
Java面试题冲刺第十八天--Spring框架3
2021/08/07 面试题