HTML5技术

HTML5 极简的JS函数 - zxh91989(10)

字号+ 作者:H5之家 来源:H5之家 2017-12-07 12:10 我要评论( )

另一方面,div模式也有其缺点: 不支持菜单内容在多页面的复用,需每个页面都生成对应的菜单节点; 主界面和菜单内容的滚动互不影响,因此会使用div区域滚动,在低端Android手机且滚动内容较多时,可能会稍显卡顿;

另一方面,div模式也有其缺点:

  • 不支持菜单内容在多页面的复用,需每个页面都生成对应的菜单节点;
  • 主界面和菜单内容的滚动互不影响,因此会使用div区域滚动,在低端Android手机且滚动内容较多时,可能会稍显卡顿;
  • div模式支持不同的动画效果,每种动画效果需遵从不同的DOM构造;下面我们以右滑菜单为例(左滑菜单仅需将菜单父节点上的mui-off-canvas-left换成mui-off-canvas-right即可),说明每种动画对应的DOM结构。

    动画1:主界面移动、菜单不动

    <!-- 侧滑导航根容器 --> <div class="mui-off-canvas-wrap mui-draggable"> <!-- 菜单容器 --> <aside class="mui-off-canvas-left"> <div class="mui-scroll-wrapper"> <div class="mui-scroll"> <!-- 菜单具体展示内容 --> ... <div> </div> </aside> <!-- 主页面容器 --> <div class="mui-inner-wrap"> <!-- 主页面标题 --> <header class="mui-bar mui-bar-nav"> <a class="mui-icon mui-action-menu mui-icon-bars mui-pull-left"></a> <h1 class="mui-title">标题</h1> </header> <div class="mui-content mui-scroll-wrapper"> <div class="mui-scroll"> <!-- 主界面具体展示内容 --> ... </div> </div> </div> </div>

    动画2:主界面不动、菜单移动  

    该种动画要求的DOM结构和动画1的DOM结构基本相同,唯一差别就是需在侧滑导航根容器class上增加一个mui-slide-in类

    动画3:主界面、菜单同时移动  

    该种动画要求的DOM结构较特殊,需将菜单容器放在主页面容器之下

    <!-- 侧滑导航根容器 --> <div class="mui-off-canvas-wrap mui-draggable"> <!-- 主页面容器 --> <div class="mui-inner-wrap"> <!-- 菜单容器 --> <aside class="mui-off-canvas-left"> <div class="mui-scroll-wrapper"> <div class="mui-scroll"> <!-- 菜单具体展示内容 --> ... <div> </div> </aside> <!-- 主页面标题 --> <header class="mui-bar mui-bar-nav"> <a class="mui-icon mui-action-menu mui-icon-bars mui-pull-left"></a> <h1 class="mui-title">标题</h1> </header> <!-- 主页面内容容器 --> <div class="mui-content mui-scroll-wrapper"> <div class="mui-scroll"> <!-- 主界面具体展示内容 --> ... </div> </div> </div> </div>

    mui支持多种方式显示div模式的侧滑菜单:1、在主界面向右拖动(drag);2、点击含有mui-action-menu类的控件;3、Android手机按menu键;4、通过JS API触发,如下:

    mui('.mui-off-canvas-wrap').offCanvas('show');

    同样,mui支持多种方式关闭div模式的侧滑菜单:1、在手机屏幕上任意位置向左拖动(drag);2、点击主界面内任意位置;3、Android手机按menu键;4、Android手机按back键;5、通过JS API触发,如下:

    mui('.mui-off-canvas-wrap').offCanvas('close');

          

    弹出菜单

    mui框架内置了弹出菜单插件,弹出菜单显示内容不限,但必须包裹在一个含.mui-popover类的div中,如下即为一个弹出菜单内容:

    <div id="popover" class="mui-popover"> <ul class="mui-table-view"> <li class="mui-table-view-cell"><a href="#">Item1</a></li> <li class="mui-table-view-cell"><a href="#">Item2</a></li> <li class="mui-table-view-cell"><a href="#">Item3</a></li> <li class="mui-table-view-cell"><a href="#">Item4</a></li> <li class="mui-table-view-cell"><a href="#">Item5</a></li> </ul> </div>

    要显示、隐藏如上菜单,mui推荐使用锚点方式,例如:

    <a href="#popover" class="mui-btn mui-btn-primary mui-btn-block">打开弹出菜单</a>

    点击如上定义的按钮,即可显示弹出菜单,再次点击弹出菜单之外的其他区域,均可关闭弹出菜单;这种使用方式最为简洁。

    若希望通过js的方式控制弹出菜单,则通过如下一个方法即可:

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • html5知识点:简析正则表达式 - 千千小助

      html5知识点:简析正则表达式 - 千千小助

      2017-12-02 08:02

    • html5知识点:CSS3新增选择器 - 千千小助

      html5知识点:CSS3新增选择器 - 千千小助

      2017-11-30 09:00

    • 推荐10个适合初学者的 HTML5 入门教程 - 赵一航

      推荐10个适合初学者的 HTML5 入门教程 - 赵一航

      2017-11-27 08:03

    • html5知识点:HTML5新特性 - 千千小助

      html5知识点:HTML5新特性 - 千千小助

      2017-11-24 18:00

    网友点评
    .