小程序根据手机机型设置自定义底部导航距离


Posted in Javascript onJune 04, 2019

需求:

iponeX 以上机型,手机底部有弧度,自己写的导航栏会被遮住, 需要判断手机机型,做兼容设置.

解决:

//app.js
App({

 /**
  * 当小程序初始化完成时,会触发 onLaunch(全局只触发一次)
  */
 onLaunch: function() {
  var that = this;
  //获取手机型号
  wx.getSystemInfo({
   success(res) {
    const model = res.model;
    const modelInclude = ["iPhone X", 'iPhone XR', "iPhone XS", "iPhone XS MAX"];
    var flag = false;//是否X以上机型
    for (let i = 0; i < modelInclude.length;i ++){
     //模糊判断是否是modelInclude 中的机型,因为真机上测试显示的model机型信息比较长无法一一精确匹配
     if (model.indexOf(modelInclude[i]) != -1){
      flag = true
     }
    }
    if (flag) {
     that.BOTTOM_DISTANCE = 50;
    }
   }
  })
 },

 /**
  * 当小程序启动,或从后台进入前台显示,会触发 onShow
  */
 onShow: function(options) {

 },

 /**
  * 当小程序从前台进入后台,会触发 onHide
  */
 onHide: function() {

 },

 /**
  * 当小程序发生脚本错误,或者 api 调用失败时,会触发 onError 并带上错误信息
  */
 onError: function(msg) {

 },

 BOTTOM_DISTANCE:0,//iponeX底部需要抬高的距离
})

页面js

const app = getApp();

Page({

 /**
  * 页面的初始数据
  */
 data: {
  bottom: app.BOTTOM_DISTANCE//将app实例中的BOTTOM_DISTANCE转化为页面的data,即可在xml上使用
 },

 /**
  * 生命周期函数--监听页面加载
  */
 onLoad: function(options) {
 },
})

然后设置导航底部padding距离即可;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery AJAX 用于计算点击率(统计)
Jun 30 Javascript
基于jquery的返回顶部效果(兼容IE6)
Jan 17 Javascript
jquery html动态生成select标签出问题的解决方法
Nov 20 Javascript
JavaScript实现打字效果的方法
Jul 10 Javascript
JS/jQ实现免费获取手机验证码倒计时效果
Jun 13 Javascript
vue制作加载更多功能的正确打开方式
Oct 12 Javascript
node.js实现复制文本到剪切板的功能
Jan 23 Javascript
理解Angular的providers给Http添加默认headers
Jul 04 Javascript
详解HTML5 使用video标签实现选择摄像头功能
Oct 25 Javascript
如何优雅地取消 JavaScript 异步任务
Mar 22 Javascript
用Angular实现一个扫雷的游戏示例
May 15 Javascript
Ajax实现局部刷新的方法实例
Mar 31 Javascript
js回文数的4种判断方法示例
Jun 04 #Javascript
Vue对象赋值视图不更新问题及解决方法
Jun 03 #Javascript
在 Vue 应用中使用 Netlify 表单功能的方法详解
Jun 03 #Javascript
JavaScript之数组扁平化详解
Jun 03 #Javascript
JavaScript从原型到原型链深入理解
Jun 03 #Javascript
生产制造追溯系统之再说条码打印
Jun 03 #Javascript
VUE安装使用教程详解
Jun 03 #Javascript
You might like
Amazon Prime Video平台《无限住人 -IMMORTAL-》2020年开始TV放送!
2020/03/06 日漫
一些使用频率比较高的php函数
2008/10/03 PHP
Netbeans 8.2将支持PHP7 更精彩
2016/06/13 PHP
PHP多个图片压缩成ZIP的方法
2020/08/18 PHP
用js统计用户下载网页所需时间的脚本
2008/10/15 Javascript
javascript preload&amp;lazy load
2010/05/13 Javascript
jquery keypress,keyup,onpropertychange键盘事件
2010/06/25 Javascript
面向对象的Javascript之一(初识Javascript)
2012/01/20 Javascript
javascript 构造函数强制调用经验总结
2012/12/02 Javascript
利用jquery给指定的table动态添加一行、删除一行的方法
2016/10/12 Javascript
AngularJS入门教程之Cookies读写操作示例
2016/11/02 Javascript
利用nodejs监控文件变化并使用sftp上传到服务器
2017/02/18 NodeJs
vue.js实例对象+组件树的详细介绍
2017/10/20 Javascript
es6 super关键字的理解与应用实例分析
2020/02/15 Javascript
Vue初始化中的选项合并之initInternalComponent详解
2020/06/11 Javascript
python实现的阳历转阴历(农历)算法
2014/04/25 Python
Python实现简单网页图片抓取完整代码实例
2017/12/15 Python
通过Python 接口使用OpenCV的方法
2018/04/02 Python
学生信息管理系统Python面向对象版
2019/01/30 Python
Flask框架实现的前端RSA加密与后端Python解密功能详解
2019/08/13 Python
python scipy卷积运算的实现方法
2019/09/16 Python
Python爬虫库BeautifulSoup获取对象(标签)名,属性,内容,注释
2020/01/25 Python
Tensorflow 多线程与多进程数据加载实例
2020/02/05 Python
python 串行执行和并行执行实例
2020/04/30 Python
吉力贝官方网站:Jelly Belly
2019/03/11 全球购物
JD Sports西班牙:英国领先的运动服装公司
2020/01/06 全球购物
应用电子专业学生的自我评价
2013/10/16 职场文书
上班上网检讨书
2014/01/29 职场文书
十佳护士先进事迹
2014/05/08 职场文书
优秀中职教师事迹材料
2014/08/26 职场文书
2014年旅游局法制宣传日活动总结
2014/11/01 职场文书
信贷客户经理岗位职责
2015/04/09 职场文书
比较node.js和Deno
2021/04/27 Javascript
Python+Tkinter制作专属图形化界面
2022/04/01 Python
vue里使用create, mounted调用方法
2022/04/26 Vue.js
MySql中的json_extract函数处理json字段详情
2022/06/05 MySQL