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 相关文章推荐
取得父标签
Nov 14 Javascript
dreamweaver 安装Jquery智能提示
Apr 02 Javascript
JQuery boxy插件在IE中边角图片不显示问题的解决
May 20 Javascript
WebGL利用FBO完成立方体贴图效果完整实例(附demo源码下载)
Jan 26 Javascript
javascript常见数字进制转换实例分析
Apr 21 Javascript
详解从新建vue项目到引入组件Element的方法
Aug 29 Javascript
微信小程序swiper组件用法实例分析【附源码下载】
Dec 07 Javascript
JS计算输出100元钱买100只鸡问题的解决方法
Jan 04 Javascript
AngularJs返回前一页面时刷新一次前面页面的方法
Oct 09 Javascript
vue实现随机验证码功能的实例代码
Apr 30 Javascript
浅谈VUE防抖与节流的最佳解决方案(函数式组件)
May 22 Javascript
JS造成内存泄漏的几种情况实例分析
Mar 02 Javascript
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获取客户端真实IP地址的5种情况分析和实现代码
2014/07/08 PHP
PHP启动windows应用程序、执行bat批处理、执行cmd命令的方法(exec、system函数详解)
2014/10/20 PHP
ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
2016/03/23 PHP
Yii2中hasOne、hasMany及多对多关联查询的用法详解
2017/02/15 PHP
PHP实现的激活用户注册验证邮箱功能示例
2017/06/06 PHP
基于PHP实现发微博动态代码实例
2020/12/11 PHP
jQuery插件jFade实现鼠标经过的图片高亮其它变暗
2015/03/14 Javascript
基于JS实现回到页面顶部的五种写法(从实现到增强)
2016/09/03 Javascript
JS实现鼠标滑过显示边框的菜单效果
2016/09/21 Javascript
微信小程序 实战小程序实例
2016/10/08 Javascript
JavaScript在form表单中使用button按钮实现submit提交方法
2017/01/23 Javascript
angular或者js怎么确定选中ul中的哪几个li
2017/08/16 Javascript
JavaScript 跨域之POST实现方法
2018/05/07 Javascript
Vue中android4.4不兼容问题的解决方法
2018/09/04 Javascript
Node.js+Vue脚手架环境搭建的方法步骤
2020/03/08 Javascript
基于JS+HTML实现弹窗提示是否确认提交功能
2020/06/17 Javascript
H5+css3+js搭建带验证码的登录页面
2020/10/11 Javascript
解决vue props传Array/Object类型值,子组件报错的情况
2020/11/07 Javascript
[04:44]DOTA2西游记战队视频彩蛋流出 师徒开黑巧遇林书豪
2016/08/03 DOTA
Python 3中print函数的使用方法总结
2017/08/08 Python
python实现八大排序算法(2)
2017/09/14 Python
pandas使用get_dummies进行one-hot编码的方法
2018/07/10 Python
谈一谈基于python的面向对象编程基础
2019/05/21 Python
详解Django定时任务模块设计与实践
2019/07/24 Python
django创建超级用户时指定添加其它字段方式
2020/05/14 Python
HTML5页面无缝闪开的问题及解决方案
2020/06/11 HTML / CSS
中东最大的在线宠物店:Dubai Pet Food
2020/06/11 全球购物
实习自我鉴定范文
2013/10/30 职场文书
大学毕业生自我鉴定
2013/11/05 职场文书
外语系毕业生求职自荐信
2014/04/12 职场文书
大学教师个人总结
2015/02/10 职场文书
2019毕业论文致谢词
2019/06/24 职场文书
XX部保密工作制度范本
2019/08/27 职场文书
详解nodejs内置模块
2021/05/06 NodeJs
python基础学习之生成器与文件系统知识总结
2021/05/25 Python
Python Django项目和应用的创建详解
2021/11/27 Python