您现在的位置: 首页 > 开发编程 > HBuilder教程 > 正文

MUI框架预加载

作者:admin来源:网络浏览:时间:2017-05-15 22:20:17我要评论
分享到
预加载都是在mui.init({)}中执行的 

方式一:preload一次仅能预加载一个页面(除非循环)

  1. var subWebview = mui.preload({ 
  2.     url: 'examples/accordion.html'
  3.     id: 'template_sub'
  4.     top: '   
  5.     styles: { 
  6. px ',   
  7.         bottom: '0px' 
  8.     } 
  9. }); 
  10.   
  11. 不设置循环,第一遍可以,第二遍开始就还是卡顿,效果很不好,特别是添加了图片,或者图片滚动 

方式二:create一次仅能预加载一个页面  (除非循环)  

 

  1. function clicklist (id) { //list点击item后的事件 
  2.     var nwaiting = plus.nativeUI.showWaiting();//显示原生等待框 
  3.     webviewShow = plus.webview.create("show.html");//后台创建webview并打开show.html 
  4.     webviewShow.addEventListener("loaded"function() { //注册新webview的载入完成事件 
  5.         nwaiting.close(); //新webview的载入完毕后关闭等待框 
  6.         webviewShow.show("slide-in-right",150); //把新webview窗体显示出来,显示动画效果为速度150毫秒的右侧移入动画 
  7.     }, false); 

方式三:通过mui.init方法中的preloadPages参数进行配置.可预加载多个页面,但不会返回预加载每个页面的引用(异步执行)
 

  1. mui.init({ 
  2.     preloadPages: [{ 
  3.         url: prelaod - page - url, 
  4.         id: preload - page - id, 
  5.         extras: { 
  6.             valueArray: styles: {}, //窗口参数   
  7.             valueArray, 
  8.             productArray: productArray 
  9.         }, //自定义扩展参数,在该页面获取方式:varweb=plus.webview.currentWebview;web.valueArray   
  10.         subpages: [{}, {}] //预加载页面的子页面   
  11.     }] 
  12. }); 

方式四:加载子页面,通常是在原来具备【header】或者【footer】的前提下,再加载进来一个【list列表】或者【mui-content】与原页面进行合并

注:用此方法设计一次页首和页尾就行,如果在子页在设置页首和页尾的高度,则就会相比首页再次加载高度,就不好看了

  1. subpages: 
  2. [{ 
  3.     id:'list',   
  4.     url:'list.html',   
  5.     styles:{   
  6.         top:'45px',   
  7.         bottom:0,   
  8.         bounce:'vertical'   
  9.     }   
  10. }] 


 

相关热词搜索: