mui框架移动开发初体验详解


Posted in Javascript onOctober 11, 2017

前  言

博主最近在接触移动APP,学习了几个小技巧,和大家分享一下。

1. 状态栏设置

现在打开绝大多数APP,状态栏都是与APP一体,不仅美观,而且与整体协调。

博主是个中度强迫症患者,顶部那个小黑条实在让我不舒服。

首先,我们在HBuilder上新建一个移动APP项目

1.1沉浸式状态栏(状态栏透明)

一般整个页面是图片时,会使状态栏透明。

首先,检测当前环境是否支持沉浸式状态栏。检测语句:

<script type="text/javascript">
  document.addEventListener('plusready', function(){
    //是否支持沉浸式状态栏
    alert(plus.navigator.isImmersedStatusbar());
    
  });
</script>

默认是不支持的,会弹出false。想让环境支持,需要修改项目下的配置文件manifest.json

在项目下有个manifest.json文件,打开后,打开代码视图:

mui框架移动开发初体验详解

在代码视图"plus"下添加

"statusbar": {
      "immersed": true
    },

如图所示:

mui框架移动开发初体验详解

修改完成后,会弹出true,效果如下:

mui框架移动开发初体验详解

终端支持:

  • Android4.4及以上系统支持;
  • iOS7.0及以上系统支持

1.2状态栏全屏

状态栏全屏是没有状态栏,不显示电量、信号那一条。

这个效果是在JS文件中加入语句:

<script type="text/javascript">
  document.addEventListener('plusready', function(){
    //参数:true - 全屏;false - 不全屏
    plus.navigator.setFullscreen(true);
    
  });
</script>

效果如下:

mui框架移动开发初体验详解

1.3状态栏背景色

修改背景色一般用于页面顶部背景色为纯色的场景,修改成和页面一致的背景色,使页面更和谐。

//设置系统状态栏背景色
plus.navigator.setStatusBarBackground('#6495ED');

Android平台不支持此功能,如有大神,请多多指点。

2. 毛玻璃效果

图片模糊化可以给人朦胧美的效果。点一下以前没提到的图片模糊效果:

css属性filter:

filter: blur(16px);

blur()中的像素是模糊程度。

3. 简单使用mui快速搭建页面

前面最困扰我的状态栏问题解决了,页面布局就好办了。用mui模板可以快速搭建出来。

以XX音乐为例:

2.1导入文件

<script src="js/mui.min.js"></script>
  <link href="css/mui.min.css" rel="external nofollow" rel="stylesheet"/>
  <link rel="stylesheet" href="css/bofang.css" rel="external nofollow" />

2.2HTML代码

下面HTML代码为使用的mui框架部分和上述状态栏相关部分,这块mui是关于区域轮播部分

顶部img是背景图,外层包裹的div非常有必要,overflow属性要活用,才能有完美的效果。

因为APP的header部分用的定位,所以页面主体部分要加高度为74px左右的padding-top

<div class="mui-slider">
       <div class="mui-slider-group">
         <div class="mui-slider-item">
          第一个轮播区域
         </div>
         <div class="mui-slider-item">
          <p class="singer">
            <span class="ce"></span>
            <span class="mui-text-center">G-DRAGON</span>
            <span class="ce"></span>
          </p>
          <p class="yinxiao">
            <img src="img/player_btn_sq_hlight.png"/>
            <img src="img/player_btn_mv_normal.png"/>
            <img src="img/player_btn_dts_on.png"/>
          </p>
          
          <div class="datu">
            <img src="img/GD.jpg"/>
          </div>
          
          <p class="geci">A Boy - G-DRAGON</p>
          
          
         </div>
         <div class="mui-slider-item">
          第二个轮播区域
         </div>
       </div>
       <div class="mui-slider-indicator">
        <div class="mui-indicator"></div>
        <div class="mui-indicator mui-active"></div>
        <div class="mui-indicator"></div>
       </div>
    </div>

主要css代码:

*{
  padding: 0px;
  margin: 0px;
}
body{
  overflow: hidden;
  height: 100vh;
}
#background{
  overflow: hidden;
  text-align: right;
}
#background #backImg{
  margin-left: -120px;
  height: 99vh;
  filter: blur(16px);
}
.mui-bar-nav{
  top: 30px;
  background-color: rgba(0,0,0,0);
  box-shadow: 0 0px 0px #ccc;
}
.mui-bar-nav .mui-title{
  color: white;
  font-size: 20px;
  font-weight: normal;
  line-height: 50px;
}
#continer{
  width: 100%;
  height: 100vh;
  position: relative;
  top: -100vh;
  z-index: 5;
  padding-top: 80px;
  background-color: rgba(0,0,0,0.7);
  text-align: center;
  color: white;
}

后面不一样大小的图片居中对齐这一点还一时没想起来。这里就要用到弹性布局的交叉轴对齐方式:

#continer .footer1{
  margin-bottom: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
}

显示下效果:

mui框架移动开发初体验详解

mui框架移动开发初体验详解

小q有话说

博主写博客也是想提高自己,还请大神指教。

另外,框架确实好用,但是博主觉得,还是得把原生代码先掌握好。

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

Javascript 相关文章推荐
用js实现的检测浏览器和系统的函数
Apr 09 Javascript
JS字符串拼接在ie中都报错的解决方法
Mar 27 Javascript
javascript中arguments,callee,caller详解
Mar 16 Javascript
hovertree插件实现二级树形菜单(简单实用)
Dec 28 Javascript
JavaScript实现的浏览器下载文件的方法
Aug 09 Javascript
浅析vue.js数组的变异方法
Jun 30 Javascript
angularjs 的数据绑定实现原理
Jul 02 Javascript
Bootstrap Table 双击、单击行获取该行及全表内容
Aug 31 Javascript
Vue中控制v-for循环次数的实现方法
Sep 26 Javascript
BootstrapValidator验证用户名已存在(ajax)
Nov 08 Javascript
JS实现进度条动态加载特效
Mar 25 Javascript
vue中watch的用法汇总
Dec 28 Vue.js
Scala解析Json字符串的实例详解
Oct 11 #Javascript
jQuery使用bind函数实现绑定多个事件的方法
Oct 11 #jQuery
详解vue mint-ui源码解析之loadmore组件
Oct 11 #Javascript
JS随机排序数组实现方法分析
Oct 11 #Javascript
vue mint-ui学习笔记之picker的使用
Oct 11 #Javascript
jQuery中过滤器的基本用法示例
Oct 11 #jQuery
基于VUE.JS的移动端框架Mint UI的使用
Oct 11 #Javascript
You might like
咖啡的化学
2021/03/03 咖啡文化
php数组总结篇(一)
2008/09/30 PHP
c#中的实现php中的preg_replace
2009/12/21 PHP
解决File size limit exceeded 错误的方法
2013/06/14 PHP
解析PHP无限级分类方法及代码
2013/06/21 PHP
9个经典的PHP代码片段分享
2014/12/18 PHP
支持汉转拼和拼音分词的PHP中文工具类ChineseUtil
2018/02/23 PHP
使用Javascript和DOM Interfaces来处理HTML
2006/10/09 Javascript
javascript xml为数据源的下拉框控件
2009/07/07 Javascript
javascript开发中因空格引发的错误
2010/11/08 Javascript
Extjs grid添加一个图片状态或者按钮的方法
2014/04/03 Javascript
window.location不跳转的问题解决方法
2014/04/17 Javascript
从零学JSON之JSON数据结构
2014/05/19 Javascript
如何书写高质量jQuery代码(使用jquery性能问题)
2014/06/30 Javascript
JS实现弹性漂浮效果的广告代码
2015/09/02 Javascript
AngularJS入门教程之链接与图片模板详解
2016/08/19 Javascript
值得学习的bootstrap fileinput文件上传工具
2016/11/08 Javascript
BootStrap框架个人总结(bootstrap框架、导航条、下拉菜单、轮播广告carousel、栅格系统布局、标签页tabs、模态框、菜单定位)
2016/12/01 Javascript
详解jQuery中的事件
2016/12/14 Javascript
Vue-Router的使用方法
2018/09/05 Javascript
JavaScript数据结构之栈实例用法
2019/01/18 Javascript
JS PHP字符串截取函数实现原理解析
2020/08/29 Javascript
Python文件及目录操作实例详解
2015/06/04 Python
Python 输入一个数字判断成绩分数等级的方法
2018/11/15 Python
python 在屏幕上逐字显示一行字的实例
2018/12/24 Python
在python中利用最小二乘拟合二次抛物线函数的方法
2018/12/29 Python
Pycharm 实现下一个文件引用另外一个文件的方法
2019/01/17 Python
python实现转圈打印矩阵
2019/03/02 Python
python在地图上画比例的实例详解
2020/11/13 Python
HTML5 Canvas画线技巧——实现绘制一个像素宽的细线
2013/08/02 HTML / CSS
Perfume’s Club英国官网:购买香水和护肤品
2019/11/02 全球购物
音乐教学案例
2014/01/30 职场文书
公务员转正考察材料
2014/02/07 职场文书
高中生第一学年自我鉴定2015
2014/09/28 职场文书
员工辞退通知书
2015/04/17 职场文书
apache基于端口创建虚拟主机的示例
2021/04/24 Servers