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

 更新时间:2017年10月08日 08:09:47   作者:榆木疙瘩ii  
最近用MUI做手机app应用的时候,遇到的小bug,这里小编给大家分享MUI顶部选项卡的用法(tab-top-webview-main)详解,感兴趣的朋友一起看看吧

前  言 

 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)详解,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

  • Atitit.js的键盘按键事件捆绑and事件调度

    Atitit.js的键盘按键事件捆绑and事件调度

    这篇文章主要介绍了Atitit.js的键盘按键事件捆绑and事件调度的相关资料,需要的朋友可以参考下
    2016-04-04
  • JavaScript.Encode手动解码技巧

    JavaScript.Encode手动解码技巧

    往往在网页上有JS加密代码的解码方法,但是由于代码中存在转义字符,无法正确的进行解码。
    2010-07-07
  • JavaScript闭包原理及作用详解

    JavaScript闭包原理及作用详解

    闭包是指内部函数总是可以访问其所在的外部函数中声明的变量和参数,即使在其外部函数被返回(寿命终结)了之后。这篇文章将为大家详细介绍一下闭包的原理,作用及用途,快来跟随小编一起学习一下吧
    2021-12-12
  • 详解JavaScript如何控制并发请求数量

    详解JavaScript如何控制并发请求数量

    某些情况下,我们可能需要对需要执行的多个异步任务进行异步数量控制,只允许固定数量的任务执行,本文为大家整理了JS控制并发请求数量的相关代码,希望对大家有所帮助
    2024-01-01
  • Bootstrap实现提示框和弹出框效果

    Bootstrap实现提示框和弹出框效果

    这篇文章主要为大家详细介绍了Bootstrap实现弹出框和提示框效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • JS无限级导航菜单实现方法

    JS无限级导航菜单实现方法

    今天小编就为大家分享一篇关于JS无限级导航菜单实现方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • Javascript 页面模板化很多人没有使用过的方法

    Javascript 页面模板化很多人没有使用过的方法

    今天遇到一个问题,这个问题也是我以前遇到的问题,以前的方式,也是大多数人使用的方式。大家可以看看我的文章
    2012-06-06
  • JS实现的简单表单验证功能完整实例

    JS实现的简单表单验证功能完整实例

    这篇文章主要介绍了JS实现的简单表单验证功能,结合完整实例形式分析了javascript基于字符串长度判定、数据类型判定及正则判断等操作进行表单验证的相关实现技巧,需要的朋友可以参考下
    2017-10-10
  • bootstrap实现动态进度条效果

    bootstrap实现动态进度条效果

    本篇文章主要介绍了bootstrap实现动态进度条效果,进度条可以加强应用的用户体验效果,看到数字,具有一定的参考价值,有兴趣的可以了解一下。
    2017-03-03
  • 小程序实现倒计时组件的使用示例

    小程序实现倒计时组件的使用示例

    倒计时是指从一个固定的时间开始,向前推算一段时间,来计算目标时间或剩余时间的过程,本文主要介绍了小程序实现倒计时组件的使用示例,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09

最新评论