SUI使用经验

基本布局结构:

      本地js、css请使用正确的路径

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>审批</title>
    <meta name="viewport" content="initial-scale=1, maximum-scale=1">
    <link rel="shortcut icon" href="/favicon.ico">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">

    <link rel="stylesheet" href="//g.alicdn.com/msui/sm/0.6.2/css/sm.min.css">
    <link rel="stylesheet" href="//g.alicdn.com/msui/sm/0.6.2/css/sm-extend.min.css">
    
    <script src="/wgh/examine/mobile/assets/js/zepto.js"></script>
    <script src="/wgh/examine/mobile/dist/js/sm.js"></script>
    <script src="/wgh/examine/mobile/dist/js/sm-extend.js"></script>
  </head>
  <body>
    <!-- page集合的容器,里面放多个平行的.page,其他.page作为内联页面由路由控制展示 -->
    <div class="page-group">
        <!-- 单个page ,第一个.page默认被展示-->
        <div class="page">
            <!-- 标题栏 -->
            <header class="bar bar-nav">
                <a class="icon icon-me pull-left open-panel"></a>
                <h1 class="title">标题</h1>
            </header>

            <!-- 工具栏 -->
            <nav class="bar bar-tab">
                <a class="tab-item external active" href="#">
                    <span class="icon icon-home"></span>
                    <span class="tab-label">首页</span>
                </a>
                <a class="tab-item external" href="#">
                    <span class="icon icon-star"></span>
                    <span class="tab-label">收藏</span>
                </a>
                <a class="tab-item external" href="#">
                    <span class="icon icon-settings"></span>
                    <span class="tab-label">设置</span>
                </a>
            </nav>

            <!-- 这里是页面内容区 -->
            <div class="content">
                <div class="content-block">这里是content</div>
            </div>
        </div>

        <!-- 其他的单个page内联页(如果有) -->
        <div class="page">...</div>
    </div>

    <!-- popup, panel 等放在这里 -->
    <div class="panel-overlay"></div>
    <!-- Left Panel with Reveal effect -->
    <div class="panel panel-left panel-reveal">
        <div class="content-block">
            <p>这是一个侧栏</p>
            <p></p>
            <!-- Click on link with "close-panel" class will close panel -->
            <p><a href="#" class="close-panel">关闭</a></p>
        </div>
    </div>


    <!-- 默认必须要执行$.init(),实际业务里一般不会在HTML文档里执行,通常是在业务页面代码的最后执行 -->
    <!-- <script>$.init()</script> -->
    <script type="text/javascript">
    $(document).ready(function(){
        $.init();
    });
    </script>
    
    
    
    
    <script type='text/javascript' src='//g.alicdn.com/sj/lib/zepto/zepto.min.js' charset='utf-8'></script>
    <script type='text/javascript' src='//g.alicdn.com/msui/sm/0.6.2/js/sm.min.js' charset='utf-8'></script>
    <script type='text/javascript' src='//g.alicdn.com/msui/sm/0.6.2/js/sm-extend.min.js' charset='utf-8'></script>
  </body>
</html>

组件

      1.picker

基本结构:
<input type="text" id='picker'/>
<script>
$("#picker").picker({
  toolbarTemplate: '<header class="bar bar-nav">\
  <button class="button button-link pull-left">按钮</button>\
  <button class="button button-link pull-right close-picker">确定</button>\
  <h1 class="title">标题</h1>\
  </header>',
  cols: [
    {
      textAlign: 'center',
      values: ['iPhone 4', 'iPhone 4S', 'iPhone 5', 'iPhone 5S', 'iPhone 6', 'iPhone 6 Plus', 'iPad 2', 'iPad Retina', 'iPad Air', 'iPad mini', 'iPad mini 2', 'iPad mini 3']
    }
  ]
});
</script>


cols的使用

   cols: [
   {
     textAlign: 'center',
     //选中显示
     values: values,
     //下拉显示
     displayValues:displayValues
   }

  得到值:

  $(".picker-selected").html();  //获得dispalyValue

  $("#m_type").val();           //得到value

clear清除:
在picker组件外写一个div,通过div实现清除


$("#m_type_div").html('');
  $("#m_type_div").html('<b>业务类型:</b><input type="text" id="m_type" onchange="m_type_change()"/><input type="hidden" id="m_type_text"/>');
注意点:
在通过id赋值后,点击picker组件会默认选择第一个。因此我尝试把picker组件放到click方法中,可以正常使用。
(如果有人有好的方法,可以回复。。。)
eg:
 $("#m_import_channel").val(n.org_id);
$("#m_import_channel").attr("onclick",showTemp_import_channel(id,area_id));

         

  2.datetime-picker

    //日历模板
    function clickRequestTime(e) {
        var time = $("#m_requesttime").val();
        var d;
        if(time != null && time != ''){          //判断原来是否有值
            
            var remindTime = time;  
            var str = remindTime.toString();
            str = str.replace("/-/g", "/");
            d = new Date(str);
        }else{
            d = new Date();
        }
        
        var year = d.getFullYear();  //getYear() 请使用 getFullYear() 方法代替。
        var month = d.getMonth()+1;  //从 Date 对象返回月份 (0 ~ 11)
        var date = d.getDate();
        var hour = d.getHours();
        var minute = d.getMinutes();
        
        $("#m_requesttime").datetimePicker({
            value: [year, month, date, hour, minute]
        });
    }

     3.Popup

   可以通过在链接上使用特定的类和data属性打开和关闭所需的popups:

  • 为了打开popup,我们需要添加 "open-popup" 类到任意 HTML 元素上 (最好是链接)
  • 为了关闭popup,我们需要添加 "close-popup" 类到任意 HTML 元素上 (最好是链接)
  • 如果你的App里有超过一个popups, 你需要指定适当popup,则需添加额外的属性 data-popup=".my-popup" 到这个 HTML 元素上

 

   eg.

    <button class="open-popup open-rewrite button" data-popup=".popup-rewrite">开启</button>

 

<!-- rewrite Popup -->
<div class="popup popup-rewrite">
  <div class="content-block">
    <p>About</p>
<p><a href="#" class="close-popup button button-dark">关闭</a></p> <p>Lorem ipsum dolor ...</p> </div> </div>

 

资源下载:

     只需要如下几个简单的步骤,就可以在你的应用中使用SUI Mobile了

    SUI Mobile组件库

    示例和js资源

   

posted @ 2017-12-22 08:55  hcha0  阅读(2897)  评论(0编辑  收藏  举报