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>
