mui底部導航欄切換分頁


使用Hbuilder的mui框架開發移動端非常便利、高效;

底部導航欄切換功能也是移動APP開發中必須實現的;

 

引入mui文件、下面會用到jquery,同時引進

<link href="css/mui.min.css" rel="stylesheet"/>
<script type="text/javascript" src="js/jquery.js" ></script>
<script src="js/mui.min.js"></script>

 

 html代碼:

  <header class="mui-bar mui-bar-nav">
        <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
        <h1 class="mui-title">首頁</h1>
    </header>
    
    <nav class="mui-bar mui-bar-tab">
        <a href="home.html" class="mui-tab-item mui-active" id="defaultTab">
            <span class="mui-icon mui-icon-home"></span>
            <span class="mui-tab-label">首頁</span>
        </a>
        <a href="message.html" class="mui-tab-item">
            <span class="mui-icon mui-icon-home"></span>
            <span class="mui-tab-label">商城</span>
        </a>
        <a href="setting.html" class="mui-tab-item">
            <span class="mui-icon mui-icon-home"><span class="mui-badge">5</span></span>
            <span class="mui-tab-label">購物車</span>
        </a>
    </nav>

在index的同級目錄下創建首頁,商城和購物車頁面,home.html、message.html、setting.html作為分頁;

 

js代碼:

<script type="text/javascript">
        
    //啟用雙擊監聽
        mui.init({
            gestureConfig:{
                doubletap:true
            },
            subpages:[{
                url:'home.html',
                id:'MainViwe',
                styles:{
                    top: '30px',
                    bottom: '51px'
                }
            }]
        });
    
    mui('.mui-scroll-wrapper').scroll({
        deceleration: 0.0005 //flick 減速系數,系數越大,滾動速度越慢,滾動距離越小,默認值0.0006
    });

//底部選項卡切換跳轉
(function jumpPage(){
        //跳轉頁面
        var subpages = ['home.html','message.html', 'setting.html'];
        var subpage_style = {
            top: '44px',
            bottom: '51px'
        };
        var Index=0;
        var actTab=subpages[Index],
            tittle=document.querySelector('.mui-title');
            
        var aniShow = {};//動畫顯示
        
        //首次啟動切滑效果
             //當前激活選項
            var activeTab = subpages[0];         
             //選項卡點擊事件
            mui('.mui-bar-tab').on('tap', 'a', function(e) {
                //修改對應分頁
                var targetTab = this.getAttribute('href');
                $('#MainViwe').attr('src',targetTab);
                
                //修改標題              
                tittle.innerHTML=this.querySelector('.mui-tab-label').innerHTML;
            });
             //自定義事件,模擬點擊“首頁選項卡”
            document.addEventListener('gohome', function() {
                var defaultTab = document.getElementById("defaultTab");
                //模擬首頁點擊
                mui.trigger(defaultTab, 'tap');
                //切換選項卡高亮
                var current = document.querySelector(".mui-bar-tab>.mui-tab-item.mui-active");
                if (defaultTab !== current) {
                    current.classList.remove('mui-active');
                    defaultTab.classList.add('mui-active');
                }

        });
    })()

    </script>

切換分頁的同時也切換了對應標題

 

分頁home.html

<!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="stylesheet" />
    </head>

    <body>
        <div class="mui-content">
            
            <ul class="mui-table-view">
                <li class="mui-table-view-cell">1</li>
                <li class="mui-table-view-cell">2</li>
                <li class="mui-table-view-cell">3</li>
                <li class="mui-table-view-cell">4</li>
                <li class="mui-table-view-cell">5</li>
                <li class="mui-table-view-cell">6</li>
                <li class="mui-table-view-cell">7</li>
                <li class="mui-table-view-cell">8</li>
            </ul>
        </div>
        <script src="js/mui.min.js"></script>
        <script type="text/javascript">
            mui.init()
        </script>
    </body>
</html>

 

效果:

 

 

 ...

作此隨筆以便記錄、記錄


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM