mui---要打開的頁面loaded不自動顯示,等服務器返回數據后,再做處理邏輯


loaded_no_auto_show_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>
        <button type="button" id="btn_open" class="mui-btn mui-btn-green">打開子頁</button>
        <script src="js/mui.min.js"></script>
        <script type="text/javascript">
            mui.init();
            /*從A頁面打開B頁面,B頁面為一個需要從服務端加載的列表頁面,
             若在B頁面loaded事件發生時就將其顯示出來,
             因服務器數據尚未加載完畢,列表頁面為空,用戶體驗不好;
             可通過如下方式改善用戶體驗(最好的用戶體驗應該是通過預加載的方式):
             第一步,B頁面loaded事件發生后,不自動顯示;* 
             */
            document.getElementById("btn_open").addEventListener('tap', function() {
                //A頁面中打開B頁面,設置show的autoShow為false,則B頁面在其loaded事件發生后,不會自動顯示;
                mui.openWindow({
                    url: 'loaded_no_auto_show_sub.html',
                    id: 'loaded_no_auto_show_sub',
                    show: {
                        autoShow: false
                    }
                });
            })
        </script>
    </body>

</html>

 

loaded_no_auto_show_sub.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 id="div1">我是div1</div>
        <script src="js/mui.min.js"></script>
        <script type="text/javascript">
            mui.init();
            //第二步,在B頁面獲取列表數據后,再關閉等待框、顯示B頁面
            //B頁面onload從服務器獲取列表數據;
            window.onload = function() {
                var url = 'http://zyz1.top/handler/GetCurrentUser.ashx';
                //從服務器獲取數據
                //業務數據獲取完畢,並已插入當前頁面DOM;
                //注意:若為ajax請求,則需將如下代碼放在處理完ajax響應數據之后;
                mui.get(url, {
                    "cid": '1'
                }, function(data) {
                    mui.plusReady(function() {
                        document.getElementById("div1").innerText = '你好,' + data.rname;
                        plus.nativeUI.closeWaiting(); //關閉等待框
                        mui.currentWebview.show(); //顯示當前頁面
                    });
                });
            }
        </script>
    </body>

</html>

 


免責聲明!

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



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