webview_pulltorefresh.html 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta charset="utf-8"/>
  5. <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
  6. <meta name="HandheldFriendly" content="true"/>
  7. <meta name="MobileOptimized" content="320"/>
  8. <title>下拉刷新</title>
  9. <script type="text/javascript" src="../js/common.js"></script>
  10. <script type="text/javascript" charset="utf-8">
  11. var ws=null;
  12. var list=null;
  13. // 扩展API加载完毕,现在可以正常调用扩展API
  14. function plusReady(){
  15. ws=plus.webview.currentWebview();
  16. ws.setStyle({pullToRefresh: {
  17. support: true,
  18. style: (plus.os.name=='iOS')?'default':'circle'
  19. }});
  20. ws.addEventListener('pullToRefresh', onRefresh, false);
  21. //ws.setPullToRefresh({support:true,style:'circle'}, onRefresh); // 通过方法设置下拉刷新
  22. // 第一次打开页面即开始刷新列表
  23. setTimeout(function(){
  24. console.log('Initializ refresh');
  25. ws.beginPullToRefresh();
  26. }, 200);
  27. }
  28. // 判断扩展API是否准备,否则监听'plusready'事件
  29. if(window.plus){
  30. plusReady();
  31. }else{
  32. document.addEventListener('plusready', plusReady, false);
  33. }
  34. // DOM构建完成获取列表元素
  35. document.addEventListener('DOMContentLoaded', function(){
  36. list=document.getElementById('list');
  37. var offset=document.getElementById('offset');
  38. offset&&(offset.style.height=topoffset+44+'px');
  39. });
  40. // 刷新页面
  41. function onRefresh(){
  42. setTimeout(function(){
  43. if(list){
  44. var item=document.createElement('li');
  45. item.innerHTML='<span>New Item '+(new Date())+'</span>';
  46. list.insertBefore(item,list.firstChild);
  47. }
  48. ws.endPullToRefresh();
  49. },1000);
  50. }
  51. </script>
  52. <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/>
  53. <style type="text/css">
  54. li {
  55. padding: 1em;
  56. border-bottom: 1px solid #eaeaea;
  57. }
  58. li:active {
  59. background: #f4f4f4;
  60. }
  61. </style>
  62. </head>
  63. <body>
  64. <ul id="list" style="list-style:none;margin:0;padding:0;">
  65. <li><span>Initializ List Item 1</span></li>
  66. <li><span>Initializ List Item 2</span></li>
  67. <li><span>Initializ List Item 3</span></li>
  68. <li><span>Initializ List Item 4</span></li>
  69. <li><span>Initializ List Item 5</span></li>
  70. <li><span>Initializ List Item 6</span></li>
  71. <li><span>Initializ List Item 7</span></li>
  72. <li><span>Initializ List Item 8</span></li>
  73. <li><span>Initializ List Item 9</span></li>
  74. <li><span>Initializ List Item 10</span></li>
  75. </ul>
  76. </body>
  77. </html>