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


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 相关文章推荐
lib.utf.js
Aug 21 Javascript
AJAX的跨域与JSONP(为文章自动添加短址的功能)
Jan 17 Javascript
jQuery自定义事件的简单实现代码
Jan 27 Javascript
分享9点个人认为比较重要的javascript 编程技巧
Apr 27 Javascript
基于gulp合并压缩Seajs模块的方式说明
Jun 14 Javascript
js 创建对象 经典模式全面了解
Aug 16 Javascript
JS字符串false转boolean的方法(推荐)
Mar 08 Javascript
Vue父子模版传值及组件传值的三种方法
Nov 27 Javascript
jquery自定义显示消息数量
Dec 19 jQuery
ES6 Object属性新的写法实例小结
Jun 25 Javascript
vue框架制作购物车小球动画效果实例代码
Sep 26 Javascript
vue3中provide && inject的使用
Jul 01 Vue.js
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
PHP 杂谈《重构-改善既有代码的设计》之三 重新组织数据
2012/04/09 PHP
php查找字符串出现次数的方法
2014/12/01 PHP
解决Laravel blade模板转义html标签的问题
2019/09/03 PHP
简明json介绍
2008/09/28 Javascript
FLASH 广告之外的链接
2008/12/16 Javascript
Js 获取HTML DOM节点元素的方法小结
2009/04/24 Javascript
理解 JavaScript 预解析
2009/10/25 Javascript
javascript 语法基础 想学习js的朋友可以看看
2009/12/16 Javascript
javascript表单验证 - Parsley.js使用和配置
2013/01/25 Javascript
固定网页背景图同时保持图片比例的思路代码
2013/08/15 Javascript
jQuery之字体大小的设置方法
2014/02/27 Javascript
jQuery链式调用与show知识浅析
2016/05/11 Javascript
Vue.js第四天学习笔记
2016/12/02 Javascript
Bootstrap学习笔记之进度条、媒体对象实例详解
2017/03/09 Javascript
ES6中Iterator与for..of..遍历用法分析
2017/03/31 Javascript
老生常谈javascript中逻辑运算符&amp;&amp;和||的返回值问题
2017/04/13 Javascript
详解Vue.js分发之作用域槽
2017/06/13 Javascript
浅谈React中组件间抽象
2018/01/27 Javascript
vue模块移动组件的实现示例
2020/05/20 Javascript
Python Web框架Flask下网站开发入门实例
2015/02/08 Python
python打包压缩、读取指定目录下的指定类型文件
2018/04/12 Python
Python读取系统文件夹内所有文件并统计数量的方法
2018/10/23 Python
python将字符串以utf-8格式保存在txt文件中的方法
2018/10/30 Python
Python如何调用外部系统命令
2019/08/07 Python
Django设置Postgresql的操作
2020/05/14 Python
mui几种页面跳转方式对比总结概括
2017/08/18 HTML / CSS
美体小铺瑞典官方网站:The Body Shop瑞典
2018/01/27 全球购物
构造方法和其他方法的区别
2016/04/26 面试题
小学生考试获奖感言
2014/01/30 职场文书
体育教学随笔感言
2014/02/24 职场文书
少儿节目主持串词
2014/04/02 职场文书
节约用水倡议书
2014/04/16 职场文书
10的分与合教学反思
2014/04/30 职场文书
港澳通行证委托书怎么写
2014/08/02 职场文书
居委会个人对照检查材料思想汇报
2014/09/29 职场文书
2015年税务稽查工作总结
2015/05/26 职场文书