index.html 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width,initial-scale=1.0">
  7. <link rel="icon" href="<%= BASE_URL %>favicon.ico">
  8. <title><%= VUE_APP_TITLE %></title>
  9. </head>
  10. <body>
  11. <noscript>
  12. <strong>We're sorry but <%= VUE_APP_TITLE %> doesn't work properly without JavaScript
  13. enabled. Please enable it to continue.</strong>
  14. </noscript>
  15. <script type="text/javascript">
  16. var dark = window.localStorage.getItem('APP_DARK');
  17. if(dark){
  18. document.documentElement.classList.add("dark")
  19. }
  20. </script>
  21. <div id="app" class="aminui">
  22. <div class="app-loading">
  23. <div class="app-loading__loader"></div>
  24. <div class="app-loading__title"><%= VUE_APP_TITLE %></div>
  25. </div>
  26. <style>
  27. .app-loading {position: absolute;top:0px;left:0px;right:0px;bottom:0px;display: flex;justify-content: center;align-items: center;flex-direction: column;background: #fff;}
  28. .app-loading__logo {margin-bottom: 30px;}
  29. .app-loading__logo img {width: 90px;vertical-align: bottom;}
  30. .app-loading__loader {box-sizing: border-box;width: 35px;height: 35px;border: 5px solid transparent;border-top-color: #000;border-radius: 50%;animation: .5s loader linear infinite;position: relative;}
  31. .app-loading__loader:before {box-sizing: border-box;content: '';display: block;width: inherit;height: inherit;position: absolute;top: -5px;left: -5px;border: 5px solid #ccc;border-radius: 50%;opacity: .5;}
  32. .app-loading__title {font-size: 24px;color: #333;margin-top: 30px;}
  33. .dark .app-loading {background: #222225;}
  34. .dark .app-loading__loader {border-top-color: #fff;}
  35. .dark .app-loading__title {color: #d0d0d0;}
  36. @keyframes loader {
  37. 0% {
  38. transform: rotate(0deg);
  39. }
  40. 100% {
  41. transform: rotate(360deg);
  42. }
  43. }
  44. </style>
  45. </div>
  46. <!-- built files will be auto injected -->
  47. </body>
  48. <div id="versionCheck" style="display: none;position: absolute;z-index: 99;top:0;left:0;right:0;bottom:0;padding:40px;background:rgba(255,255,255,0.9);color: #333;">
  49. <h2 style="line-height: 1;margin: 0;font-size: 24px;">当前使用的浏览器内核版本过低 :(</h2>
  50. <p style="line-height: 1;margin: 0;font-size: 14px;margin-top: 20px;opacity: 0.8;">当前版本:<span id="versionCheck-type">--</span> <span id="versionCheck-version">--</span></p>
  51. <p style="line-height: 1;margin: 0;font-size: 14px;margin-top: 10px;opacity: 0.8;">最低版本要求:Chrome 71+、Firefox 65+、Safari 12+、Edge 97+。</p>
  52. <p style="line-height: 1;margin: 0;font-size: 14px;margin-top: 10px;opacity: 0.8;">请升级浏览器版本,或更换现代浏览器,如果你使用的是双核浏览器,请切换到极速/高速模式。</p>
  53. </div>
  54. <script type="text/javascript">
  55. function getBrowerInfo(){
  56. var userAgent = window.navigator.userAgent;
  57. var browerInfo = {
  58. type: 'unknown',
  59. version: 'unknown',
  60. userAgent: userAgent
  61. };
  62. if(document.documentMode){
  63. browerInfo.type = "IE"
  64. browerInfo.version = document.documentMode + ''
  65. }else if(indexOf(userAgent, "Firefox")){
  66. browerInfo.type = "Firefox"
  67. browerInfo.version = userAgent.match(/Firefox\/([\d.]+)/)[1]
  68. }else if(indexOf(userAgent, "Opera")){
  69. browerInfo.type = "Opera"
  70. browerInfo.version = userAgent.match(/Opera\/([\d.]+)/)[1]
  71. }else if(indexOf(userAgent, "Edg")){
  72. browerInfo.type = "Edg"
  73. browerInfo.version = userAgent.match(/Edg\/([\d.]+)/)[1]
  74. }else if(indexOf(userAgent, "Chrome")){
  75. browerInfo.type = "Chrome"
  76. browerInfo.version = userAgent.match(/Chrome\/([\d.]+)/)[1]
  77. }else if(indexOf(userAgent, "Safari")){
  78. browerInfo.type = "Safari"
  79. browerInfo.version = userAgent.match(/Safari\/([\d.]+)/)[1]
  80. }
  81. return browerInfo
  82. }
  83. function indexOf(userAgent, brower) {
  84. return userAgent.indexOf(brower) > -1
  85. }
  86. function isSatisfyBrower(){
  87. var minVer = {
  88. "Chrome": 71,
  89. "Firefox": 65,
  90. "Safari": 12,
  91. "Edg": 97,
  92. "IE": 999
  93. }
  94. var browerInfo = getBrowerInfo()
  95. var materVer = browerInfo.version.split('.')[0]
  96. return materVer >= minVer[browerInfo.type]
  97. }
  98. if(!isSatisfyBrower()){
  99. document.getElementById('versionCheck').style.display = 'block';
  100. document.getElementById('versionCheck-type').innerHTML = getBrowerInfo().type;
  101. document.getElementById('versionCheck-version').innerHTML = getBrowerInfo().version;
  102. }
  103. </script>
  104. </html>