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按位非(~)运算符与~~运算符的理解分析
Jul 31 Javascript
IE8提示Invalid procedure call or argument 异常的解决方法
Sep 30 Javascript
jQuery搜索同辈元素方法
Feb 10 Javascript
ECMAScript 5中的属性描述符详解
Mar 02 Javascript
Bootstrap每天必学之按钮(一)
Nov 24 Javascript
jquery中cookie用法实例详解(获取,存储,删除等)
Jan 04 Javascript
Angularjs整合微信UI(weui)
Mar 15 Javascript
解决vue build打包之后首页白屏的问题
Mar 06 Javascript
vue通过cookie获取用户登录信息的思路详解
Oct 30 Javascript
Vue组件内部实现一个双向数据绑定的实例代码
Apr 04 Javascript
Vue实现手机扫描二维码预览页面效果
May 28 Javascript
解决vue 使用axios.all()方法发起多个请求控制台报错的问题
Nov 09 Javascript
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
php中用foreach来操作数组的代码
2011/07/17 PHP
Yii框架调试心得--在页面输出执行sql语句
2014/12/25 PHP
PHP模板引擎Smarty内建函数详解
2016/04/11 PHP
PHP实现的Redis多库选择功能单例类
2017/07/27 PHP
PHP 代码简洁之道(小结)
2019/10/16 PHP
解读JavaScript代码 var ie = !-[1,] 最短的IE判定代码
2011/05/28 Javascript
javascript 实现 原路返回
2015/01/21 Javascript
jQuery使用元素属性attr赋值详解
2015/02/27 Javascript
jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法
2016/08/25 Javascript
详解angularjs中的隔离作用域理解以及绑定策略
2017/05/31 Javascript
vue项目动态设置页面title及是否缓存页面的问题
2018/11/08 Javascript
Vue解析剪切板图片并实现发送功能
2020/02/04 Javascript
nuxt引入组件和公共样式的操作
2020/11/05 Javascript
vue element实现表格合并行数据
2020/11/30 Vue.js
10分钟学会js处理json的常用方法
2020/12/06 Javascript
[55:25]VGJ.T vs Optic Supermajor小组赛D组 BO3 第三场 6.3
2018/06/04 DOTA
零基础写python爬虫之爬虫的定义及URL构成
2014/11/04 Python
Python实现控制台进度条功能
2016/01/04 Python
Python numpy生成矩阵、串联矩阵代码分享
2017/12/04 Python
Django开发中复选框用法示例
2018/03/20 Python
Python实现随机生成手机号及正则验证手机号的方法
2018/04/25 Python
python之Flask实现简单登录功能的示例代码
2018/12/24 Python
Python提取特定时间段内数据的方法实例
2019/04/01 Python
python实现超市商品销售管理系统
2019/10/25 Python
Python3爬虫中pyspider的安装步骤
2020/07/29 Python
python实现图书馆抢座(自动预约)功能的示例代码
2020/09/29 Python
python中@property的作用和getter setter的解释
2020/12/22 Python
浅谈html5之sse服务器发送事件EventSource介绍
2017/08/28 HTML / CSS
Harman Audio官方商店:购买JBL、Harman Kardon、Infinity和AKG
2019/12/05 全球购物
阿里巴巴的Oracle DBA笔试题答案-SQL tuning类
2016/04/03 面试题
JSF的标签库有哪些
2012/04/27 面试题
《骑牛比赛》教后反思
2014/04/22 职场文书
机械加工与数控专业自荐书
2014/06/04 职场文书
国际商贸专业自荐信
2014/06/09 职场文书
法制主题班会教案
2015/08/13 职场文书
Python import模块的缓存问题解决方案
2021/06/02 Python