MUI顶部选项卡的用法(tab-top-webview-main)详解


Posted in Javascript onOctober 08, 2017

前  言 

 MUI是一款最接近原生APP体验的高性能前端框架,它的比较重要的功能是:下拉刷新、侧滑导航、滑动触发操作菜单和顶部(底部)选项卡等

最近用MUI做手机app应用的时候,遇到的小bug。顺便研究了一下这个tab-top-webview-main,这里给大家分享一下。

1主页代码

<!doctype html>
<html>
  <head>
    <meta charset="UTF-8">
    <title></title>
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
    <link href="css/mui.min.css" rel="external nofollow" rel="external nofollow" rel="stylesheet" />
    <style type="text/css">
      .d1{
        width: 100%;
        height: 50px;
        text-align: center;
        line-height: 50px;
        background-color: #CCCCCC;
      }
    </style>
  </head>
  <body>
    <div class="d1">我是div1,下面是插入的子页面</div> <!--我们将在这个div下边插入子页面-->
  </body>
  <script src="js/mui.min.js"></script>
  <script type="text/javascript">
    mui.init({
      subpages:[{        //下边是初始化,然后这个页面显示我们将插入的页面
        url:"tab-top-webview-main.html",
        id:"tab-top-webview-main.html",
        styles:{
          top:"50px",
          bottom:"0px"
        }
      }]
    })
  </script>
</html>

2子页代码

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Hello MUI</title>
    <meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1,user-scalable=no">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <link rel="stylesheet" href="css/mui.min.css" rel="external nofollow" rel="external nofollow" >
  </head>
  <body>
    <div class="mui-content">
      <div id="slider" class="mui-slider mui-fullscreen">
        <div id="sliderSegmentedControl" class="mui-scroll-wrapper mui-slider-indicator mui-segmented-control mui-segmented-control-inverted">
          <div class="mui-scroll">
            <a class="mui-control-item mui-active" href="#item1mobile" rel="external nofollow" rel="external nofollow" data-wid="tab-top-subpage-1.html">
              推荐
            </a>
            <a class="mui-control-item" href="#item2mobile" rel="external nofollow" data-wid="tab-top-subpage-2.html">
              热点
            </a>
          </div>
        </div>
      </div>
    </div>
    <script src="js/mui.min.js"></script>
    <script src="js/webviewGroup.js" type="text/javascript" charset="utf-8"></script>
    <script>
      mui.init();
      mui.plusReady(function() {
        var group = new webviewGroup("tab-top-webview-main.html", {
          items: [{
            id: "tab-top-subpage-1.html",  //这是子页1的路径
            url: "tab-top-subpage-1.html",
            extras: {}
          }, {
            id: "tab-top-subpage-2.html",  //这是子页2的路径
            url: "tab-top-subpage-2.html",
            extras: {}
          }],
          onChange: function(obj) {
            var c = document.querySelector(".mui-control-item.mui-active");
            if(c) {
              c.classList.remove("mui-active");
            }
            document.querySelector(".mui-scroll .mui-control-item:nth-child(" + (parseInt(obj.index) + 1) + ")").classList.add("mui-active");
          }
        });
        mui(".mui-scroll").on("tap", ".mui-control-item", function(e) {
          var wid = this.getAttribute("data-wid");
          group.switchTab(wid);
        });
      });
      mui.back = function() {
        var _self = plus.webview.currentWebview();
        _self.close("auto");
      }
    </script>
  </body>
</html>

3代码解释

var group = new webviewGroup("tab-top-webview-main.html", {
  items: [{
    id: "tab-top-subpage-1.html",  //这是子页1的路径
    url: "tab-top-subpage-1.html",
    extras: {}
    }, {
      id: "tab-top-subpage-2.html",  //这是子页2的路径
      url: "tab-top-subpage-2.html",
      extras: {}
    }]
  })

1、子页选项卡的超链接a的data-wid=""属性需要设置为对应子页选项卡路径。

<a class="mui-control-item mui-active" href="#item1mobile" rel="external nofollow" rel="external nofollow" data-wid="tab-top-subpage-1.html">
              推荐
</a>

2、这里,new webviewGroup("tab-top-webview-main.html",{})  第一个参数需要传入一个页面的id。需要注意的是,这个页面id 就是我们包含顶部选项卡的页面,也就是当前我们这段js所在的页面

new webviewGroup("tab-top-webview-main.html", {}

3、 items数组中传入的是子页对应选项卡该导入的子页面的id,有几个子页就添加几个子页,中间用逗号分隔

大家如果还有别的需求,可以去MUI网站上查找帮助文档  http://dev.dcloud.net.cn/mui/,还有很多小功能,我会陆续更新的~~~

总结

以上所述是小编个大家介绍的MUI顶部选项卡的用法(tab-top-webview-main)详解,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
兼容FireFox 的 js 日历 支持时间的获取
Mar 04 Javascript
AeroWindow 基于JQuery的弹出窗口插件
Jun 27 Javascript
Javascript正则控制文本框只能输入整数或浮点数
Sep 02 Javascript
js的touch事件的实际引用
Oct 13 Javascript
超漂亮的Bootstrap 富文本编辑器summernote
Apr 05 Javascript
收藏AngularJS中最重要的核心功能
Jul 09 Javascript
关于webpack2和模块打包的新手指南(小结)
Aug 07 Javascript
微信小程序冒泡事件及其阻止方法实例分析
Dec 06 Javascript
基于Vue+ElementUI的省市区地址选择通用组件
Nov 20 Javascript
JavaScript享元模式原理与用法实例详解
Mar 09 Javascript
解决vue watch数据的方法被调用了两次的问题
Nov 07 Javascript
ESLint 是如何检查 .vue 文件的
Nov 30 Vue.js
JS动态修改网页body的背景色实例代码
Oct 07 #Javascript
JS实现简单表格排序操作示例
Oct 07 #Javascript
javascript数组定义的几种方法
Oct 06 #Javascript
node.js利用mongoose获取mongodb数据的格式化问题详解
Oct 06 #Javascript
node.js中http模块和url模块的简单介绍
Oct 06 #Javascript
你应该知道的几类npm依赖包管理详解
Oct 06 #Javascript
vue-cli构建项目使用 less的方法
Oct 04 #Javascript
You might like
理解php原理的opcodes(操作码)
2010/10/26 PHP
PHP面向对象程序设计之类常量用法实例
2014/08/20 PHP
Yii2框架数据验证操作实例详解
2018/05/02 PHP
解决php写入数据库乱码的问题
2019/09/17 PHP
Laravel如何实现适合Api的异常处理响应格式
2020/06/14 PHP
function, new function, new Function之间的区别
2007/03/08 Javascript
JavaScript中关于indexOf的使用方法与问题小结
2010/08/05 Javascript
ExtJS如何设置与获取radio控件的选取状态
2014/01/22 Javascript
Ext修改GridPanel数据和字体颜色、css属性等
2014/06/13 Javascript
后台获取ZTREE选中节点的方法
2015/02/12 Javascript
关于List.ToArray()方法的效率测试
2016/09/30 Javascript
js 实现省市区三级联动菜单效果
2017/02/20 Javascript
原生js封装自定义滚动条
2017/03/24 Javascript
bootstrap datepicker插件默认英文修改为中文
2017/07/28 Javascript
vue-cli脚手架-bulid下的配置文件
2018/03/27 Javascript
Vue表单及表单绑定方法
2018/09/04 Javascript
Vue 实现列表动态添加和删除的两种方法小结
2018/09/07 Javascript
微信小程序列表中item左滑删除功能
2018/11/07 Javascript
nodejs基础之多进程实例详解
2018/12/27 NodeJs
用Javascript实现发送短信验证码间隔功能
2021/02/08 Javascript
浅谈django中的认证与登录
2016/10/31 Python
Python实现的字典排序操作示例【按键名key与键值value排序】
2018/12/21 Python
python实现电子书翻页小程序
2019/07/23 Python
Python3 翻转二叉树的实现
2019/09/30 Python
Pytorch基本变量类型FloatTensor与Variable用法
2020/01/08 Python
python等差数列求和公式前 100 项的和实例
2020/02/25 Python
matlab中imadjust函数的作用及应用举例
2020/02/27 Python
幼儿园毕业寄语
2014/04/03 职场文书
城市创卫标语
2014/06/17 职场文书
金融专业银行实习证明模板
2014/11/28 职场文书
小学三八妇女节活动总结
2015/02/06 职场文书
团员个人年度总结
2015/02/26 职场文书
运动会加油稿30字
2015/07/21 职场文书
某学校的2019年度工作报告范本
2019/10/11 职场文书
关于CentOS 8 搭建MongoDB4.4分片集群的问题
2021/10/24 MongoDB
《艾尔登法环》1.03.3补丁上线 碎星伤害调整
2022/04/06 其他游戏