1
0

actionsheet-plus.html 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>Hello MUI</title>
  6. <meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1,user-scalable=no">
  7. <meta name="apple-mobile-web-app-capable" content="yes">
  8. <meta name="apple-mobile-web-app-status-bar-style" content="black">
  9. <!--标准mui.css-->
  10. <link rel="stylesheet" href="../css/mui.min.css">
  11. <!--App自定义的css-->
  12. <!--<link rel="stylesheet" type="text/css" href="../css/app.css"/>-->
  13. <style>
  14. p {
  15. text-indent: 22px;
  16. }
  17. span.mui-icon {
  18. font-size: 14px;
  19. color: #007aff;
  20. margin-left: -15px;
  21. padding-right: 10px;
  22. }
  23. #info{
  24. padding: 20px 10px ;
  25. }
  26. .des{
  27. margin: .5em 0;
  28. }
  29. .des>li{
  30. font-size: 14px;
  31. color: #8f8f94;
  32. }
  33. </style>
  34. </head>
  35. <body>
  36. <header class="mui-bar mui-bar-nav">
  37. <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
  38. <h1 class="mui-title">原生模式actionsheet</h1>
  39. </header>
  40. <nav class="mui-bar mui-bar-tab">
  41. <a id="delete-btn" class="mui-tab-item">
  42. <span class="mui-icon mui-icon-trash"></span>
  43. </a>
  44. <a class="mui-tab-item" href="#">
  45. </a>
  46. <a class="mui-tab-item" href="#">
  47. </a>
  48. <a class="mui-tab-item" href="#">
  49. </a>
  50. </nav>
  51. <div class="mui-content">
  52. <div class="mui-content-padded">
  53. <p>这是5+ runtime封装的原生actionsheet,该模式具备如下优点:</p>
  54. <ul class="des">
  55. <li>支持覆盖顶部状态栏</li>
  56. <li>支持跨webview的遮罩</li>
  57. <li>在有map等原生组件时,依然会显示在最顶层,不会被遮挡</li>
  58. </ul>
  59. <p>另一方面,原生模式的actionsheet目前不支持自定义样式</p>
  60. <p>
  61. <a id="picture-btn" class="mui-btn mui-btn-primary mui-btn-block mui-btn-outlined" style="padding: 5px 20px;">打开actionsheet</a>
  62. </p>
  63. </div>
  64. </div>
  65. <p id="info"></p>
  66. </body>
  67. <script src="../js/mui.min.js"></script>
  68. <script>
  69. mui.init({
  70. swipeBack:true //启用右滑关闭功能
  71. });
  72. mui('body').on('shown', '.mui-popover', function(e) {
  73. //console.log('shown', e.detail.id);//detail为当前popover元素
  74. });
  75. mui('body').on('hidden', '.mui-popover', function(e) {
  76. //console.log('hidden', e.detail.id);//detail为当前popover元素
  77. });
  78. var info = document.getElementById("info");
  79. document.getElementById("picture-btn").addEventListener('tap',function () {
  80. var btnArray = [{title:"拍照或录像"},{title:"选取现有的"}];
  81. plus.nativeUI.actionSheet( {
  82. title:"选择照片",
  83. cancel:"取消",
  84. buttons:btnArray
  85. }, function(e){
  86. var index = e.index;
  87. var text = "你刚点击了\"";
  88. switch (index){
  89. case 0:
  90. text += "取消";
  91. break;
  92. case 1:
  93. text += "拍照或录像";
  94. break;
  95. case 2:
  96. text += "选取现有的";
  97. break;
  98. }
  99. info.innerHTML = text+"\"按钮";
  100. } );
  101. });
  102. document.getElementById("delete-btn").addEventListener('tap',function () {
  103. var btnArray = [{title:"删除信息",style:"destructive"}];
  104. plus.nativeUI.actionSheet( {
  105. cancel:"取消",
  106. buttons:btnArray
  107. }, function(e){
  108. var index = e.index;
  109. var text = "你刚点击了\"";
  110. switch (index){
  111. case 0:
  112. text += "取消";
  113. break;
  114. case 1:
  115. text += "删除信息";
  116. break;
  117. }
  118. info.innerHTML = text+"\"按钮";
  119. } );
  120. });
  121. </script>
  122. </html>