index.html 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. <!DOCTYPE html>
  2. <html lang="ZH-cn">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <link rel="icon" href="/favicon.ico" />
  6. <title>管乐团云练习</title>
  7. <meta name="description" content="管乐团APP,器乐学习的不二选择" />
  8. <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no" />
  9. <script>
  10. this.globalThis || (this.globalThis = this)
  11. </script>
  12. <script src="/helpers/lottie.min.js"></script>
  13. <link href="/vant.css" rel="stylesheet">
  14. <script>
  15. if (window.navigator && navigator.serviceWorker) {
  16. navigator.serviceWorker.getRegistrations().then(function (registrations) {
  17. for (let registration of registrations) {
  18. registration.unregister()
  19. }
  20. })
  21. }
  22. function _postMessage(data, callback) {
  23. const instance = window.ORCHESTRA || (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.ORCHESTRA)
  24. if (instance) {
  25. const uuid = '' + Date.now() + Math.floor(Math.random() * 1000000)
  26. data.content = data.content ? { ...data.content, uuid } : { uuid }
  27. console.log('h5发送:', JSON.stringify(data))
  28. instance.postMessage(JSON.stringify(data))
  29. }
  30. }
  31. // 是否隐藏APP的loading动画
  32. if (!window.location.href.includes('isHideLoading')) {
  33. _postMessage({
  34. api: 'cloudLoading',
  35. content: {
  36. show: true,
  37. type: 'fullscreen',
  38. },
  39. })
  40. }
  41. </script>
  42. <script src="https://unpkg.com/vconsole@latest/dist/vconsole.min.js"></script>
  43. <script>
  44. // VConsole will be exported to `window.VConsole` by default.
  45. // var vConsole = new window.VConsole();
  46. </script>
  47. <style>
  48. #lottieWeb,.lottieWeb{
  49. position: fixed;
  50. z-index: 100;
  51. top: 50%;
  52. left: 50%;
  53. width: 100Px;
  54. height: 100Px;
  55. transform: translate(-50%, -50%);
  56. pointer-events: none;
  57. transition: opacity .3s;
  58. }
  59. </style>
  60. </head>
  61. <body>
  62. <div id="app">
  63. <img class="lottieWeb" src="./loading.gif" alt="">
  64. </div>
  65. <div id="lottieWeb"></div>
  66. <script>
  67. // lottie.loadAnimation({
  68. // container: document.getElementById('lottieWeb'),
  69. // renderer: 'svg',
  70. // width: '30px',
  71. // height: '30px',
  72. // loop: true,
  73. // autoplay: true,
  74. // path: '/orchestra-music-score/loading.json'
  75. // });
  76. // window.addEventListener('load', function () {
  77. // const loadingEle = document.getElementById('lottieWeb')
  78. // loadingEle.style.opacity = '0'
  79. // setTimeout(() => {
  80. // loadingEle.style.display = 'none'
  81. // }, 1000)
  82. // })
  83. </script>
  84. <script type="module" src="/src/subpages/colexiu/main.ts"></script>
  85. </body>
  86. </html>