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


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 相关文章推荐
javascript 动态table添加colspan\rowspan 参数的方法
Jul 25 Javascript
JQuery 常用方法和事件详细介绍
Apr 18 Javascript
JS验证日期的格式YYYY-mm-dd 具体实现
Jun 29 Javascript
JS获取农历日期具体实例
Nov 14 Javascript
浅析js中的浮点型运算问题
Jan 06 Javascript
jquery的each方法使用示例分享
Mar 25 Javascript
php和js对数据库图片进行等比缩放示例
Apr 28 Javascript
BootStrap栅格系统、表单样式与按钮样式源码解析
Jan 20 Javascript
Ajax基础知识详解
Feb 17 Javascript
JavaScript数组和对象的复制
Mar 21 Javascript
AngularJS中使用three.js的实例详解
Jul 21 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
Nov 09 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
在mysql数据库原有字段后增加新内容
2009/11/26 PHP
PHP开发中常用的字符串操作函数
2011/02/08 PHP
用Php编写注册后Email激活验证的实例代码
2013/03/11 PHP
PHP包含文件函数include、include_once、require、require_once区别总结
2014/04/05 PHP
PHP使用GIFEncoder类处理gif图片实例
2014/07/01 PHP
浅谈PHP中output_buffering
2015/07/13 PHP
php将数组存储为文本文件方法汇总
2015/10/28 PHP
PHP批量修改文件名称的方法分析
2017/02/27 PHP
Laravel如何实现自动加载类
2019/10/14 PHP
JavaScript组合拼接字符串的效率对比测试
2014/11/06 Javascript
jQuery+AJAX实现网页无刷新上传
2015/02/22 Javascript
浅析JavaScript访问对象属性和方法及区别
2015/11/16 Javascript
基于JavaScript实现通用tab选项卡(通用性强)
2016/01/07 Javascript
设计模式中的组合模式在JavaScript程序构建中的使用
2016/05/18 Javascript
使用JS轻松实现ionic调用键盘搜索功能(超实用)
2016/09/06 Javascript
JavaScript基于对象去除数组重复项的方法
2016/10/09 Javascript
jQuery实现简单日期格式化功能示例
2017/09/19 jQuery
Vue数据双向绑定底层实现原理
2019/11/22 Javascript
小程序登录之支付宝授权的实现示例
2019/12/13 Javascript
vue webpack build资源相对路径的问题及解决方法
2020/06/04 Javascript
Python中的time模块与datetime模块用法总结
2016/06/30 Python
python if not in 多条件判断代码
2016/09/21 Python
Python和Java的语法对比分析语法简洁上python的确完美胜出
2019/05/10 Python
python使用mitmproxy抓取浏览器请求的方法
2019/07/02 Python
Django实现auth模块下的登录注册与注销功能
2019/10/10 Python
Python3 把一个列表按指定数目分成多个列表的方式
2019/12/25 Python
基于pytorch的lstm参数使用详解
2020/01/14 Python
Python接收手机短信的代码整理
2020/08/02 Python
jupyter 添加不同内核的操作
2021/02/06 Python
日本著名的服饰鞋帽综合类购物网站:MAGASEEK
2019/01/09 全球购物
献爱心捐款倡议书
2014/05/14 职场文书
乡镇干部党的群众路线教育实践活动个人对照检查材料
2014/09/24 职场文书
2016年植树节红领巾广播稿
2015/12/17 职场文书
小学教师暑期培训心得体会
2016/01/09 职场文书
农村房屋租赁合同(范本)
2019/07/23 职场文书
springcloud之Feign超时问题的解决
2021/06/24 Java/Android