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


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 相关文章推荐
JavaScript 错误处理与调试经验总结
Aug 10 Javascript
对象无length属性时IE6/IE7中无法将其转换成伪数组(ArrayLike)
Jul 31 Javascript
使用jQuery validate 验证注册表单实例演示
Mar 25 Javascript
可编辑下拉框的2种实现方式
Jun 13 Javascript
JavaScript利用正则表达式去除日期中的“-”
Jul 01 Javascript
谈一谈bootstrap响应式布局
May 23 Javascript
JS 滚动事件window.onscroll与position:fixed写兼容IE6的回到顶部组件
Oct 10 Javascript
RequireJs的使用详解
Feb 19 Javascript
vue.js做一个简单的编辑菜谱功能
May 08 Javascript
微信小程序实现笑脸评分功能
Nov 03 Javascript
jquery实现烟花效果(面向对象)
Mar 10 jQuery
js实现弹框效果
Mar 24 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在字符断点处截断文字的实现代码
2011/04/21 PHP
php中修改浏览器的User-Agent来伪装你的浏览器和操作系统
2011/07/29 PHP
详解yii2使用多个数据库的案例
2017/06/16 PHP
插件:检测javascript的内存泄漏
2007/03/04 Javascript
JavaScript中this关键字使用方法详解
2007/03/08 Javascript
js字符串截取函数substr substring slice使用对比
2013/11/27 Javascript
从零学jquery之如何使用回调函数
2014/05/16 Javascript
jQuery中even选择器的定义和用法
2014/12/23 Javascript
JavaScript如何禁止Backspace键
2015/12/02 Javascript
AngularJS的Filter的示例详解
2017/03/07 Javascript
如何在 Vue.js 中使用第三方js库
2017/04/25 Javascript
AngularJS常见过滤器用法实例总结
2017/07/06 Javascript
vue实现滑动切换效果(仅在手机模式下可用)
2020/06/29 Javascript
js实现消灭星星(web简易版)
2020/03/24 Javascript
node koa2 ssr项目搭建的方法步骤
2020/12/11 Javascript
[03:56]显微镜下的DOTA2第十一期——鬼畜的死亡先知播音员
2014/06/23 DOTA
[54:33]2018DOTA2亚洲邀请赛小组赛 A组加赛 Liquid vs Optic
2018/04/03 DOTA
wxPython窗口的继承机制实例分析
2014/09/28 Python
python select.select模块通信全过程解析
2017/09/20 Python
python生成随机图形验证码详解
2017/11/08 Python
python 从文件夹抽取图片另存的方法
2018/12/04 Python
django与小程序实现登录验证功能的示例代码
2019/02/19 Python
python pygame实现方向键控制小球
2019/05/17 Python
python基于递归解决背包问题详解
2019/07/03 Python
python 如何使用find和find_all爬虫、找文本的实现
2020/10/16 Python
什么是View State?
2013/01/27 面试题
工作表扬信的范文
2014/01/10 职场文书
婚前协议书范本
2014/04/15 职场文书
信息员培训方案
2014/06/12 职场文书
赔偿协议书怎么写
2015/01/28 职场文书
新员工试用期工作总结2015
2015/05/28 职场文书
住房公积金贷款工资证明
2015/06/12 职场文书
教师个人工作总结范文2015
2015/10/14 职场文书
MySQL入门命令之函数-单行函数-流程控制函数
2021/04/05 MySQL
再也不用花钱买漫画!Python爬取某漫画的脚本及源码
2021/06/09 Python
python中Matplotlib绘制直线的实例代码
2021/07/04 Python