index.html 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>Cocos Creator | zhetian</title>
  6. <!--http://www.html5rocks.com/en/mobile/mobifying/-->
  7. <meta name="viewport"
  8. content="width=device-width,user-scalable=no,initial-scale=1, minimum-scale=1,maximum-scale=1,viewport-fit=cover" />
  9. <!--https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html-->
  10. <meta name="mobile-web-app-capable" content="yes">
  11. <meta name="apple-mobile-web-app-capable" content="yes">
  12. <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
  13. <meta name="format-detection" content="telephone=no">
  14. <!-- force webkit on 360 -->
  15. <meta name="renderer" content="webkit" />
  16. <meta name="force-rendering" content="webkit" />
  17. <!-- force edge on IE -->
  18. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
  19. <meta name="msapplication-tap-highlight" content="no">
  20. <!-- force full screen on some browser -->
  21. <meta name="full-screen" content="yes" />
  22. <meta name="x5-fullscreen" content="true" />
  23. <meta name="360-fullscreen" content="true" />
  24. <!-- force screen orientation on some browser -->
  25. <meta name="screen-orientation" content="portrait" />
  26. <meta name="x5-orientation" content="portrait">
  27. <!--fix fireball/issues/3568 -->
  28. <!--<meta name="browsermode" content="application">-->
  29. <meta name="x5-page-mode" content="app">
  30. <!--<link rel="apple-touch-icon" href=".png" />-->
  31. <!--<link rel="apple-touch-icon-precomposed" href=".png" />-->
  32. <script type="text/javascript">
  33. var sUserAgent = navigator.userAgent.toLowerCase();
  34. var link = document.createElement('link');
  35. link.type = 'text/css';
  36. link.rel = 'stylesheet';
  37. if (/ipad|iphone|midp|rv:1.2.3.4|ucweb|android|windows ce|windows mobile/.test(sUserAgent)) {
  38. //移动端
  39. console.log("移动端")
  40. link.href = 'style-mobile.css';
  41. document.getElementsByTagName('head')[0].appendChild(link);
  42. } else {
  43. //pc端  
  44. console.log("pc端")
  45. link.href = 'style-desktop.css';
  46. document.getElementsByTagName('head')[0].appendChild(link);
  47. }
  48. </script>
  49. <link rel="icon" href="favicon.ico" />
  50. </head>
  51. <body>
  52. <style type="text/css">
  53. html {
  54. overflow-x: hidden;
  55. overflow-y: hidden;
  56. width: 100%;
  57. height: 100%;
  58. -webkit-text-size-adjust: 100%;
  59. /* 确保iOS设备上的安全区域也被覆盖 */
  60. padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
  61. }
  62. /* 将背景图片应用到整个页面 */
  63. body {
  64. background-image: url('background.d7add.jpg');
  65. background-size: cover;
  66. background-position: center;
  67. background-repeat: no-repeat;
  68. margin: 0;
  69. padding: 0;
  70. height: 100vh;
  71. width: 100vw;
  72. position: fixed;
  73. left: 0;
  74. top: 0;
  75. right: 0;
  76. bottom: 0;
  77. overflow: hidden;
  78. /* 确保iOS设备上内容不会被底部栏遮挡 */
  79. padding-bottom: env(safe-area-inset-bottom);
  80. /* 启用硬件加速 */
  81. -webkit-transform: translateZ(0);
  82. transform: translateZ(0);
  83. }
  84. /* 移除GameDiv的背景图片 */
  85. #GameDiv {
  86. position: fixed;
  87. left: 0;
  88. top: 0;
  89. right: 0;
  90. bottom: 0;
  91. width: 100%;
  92. height: 100%;
  93. overflow: hidden;
  94. /* 确保在iOS设备上完全覆盖屏幕 */
  95. max-width: 100vw;
  96. max-height: 100vh;
  97. /* 启用硬件加速 */
  98. -webkit-transform: translateZ(0);
  99. transform: translateZ(0);
  100. }
  101. /* 确保画布在背景上方 */
  102. #GameCanvas {
  103. position: fixed;
  104. z-index: 1;
  105. width: 100%;
  106. height: 100%;
  107. left: 0;
  108. top: 0;
  109. right: 0;
  110. bottom: 0;
  111. object-fit: cover;
  112. /* 启用硬件加速 */
  113. -webkit-transform: translateZ(0);
  114. transform: translateZ(0);
  115. }
  116. </style>
  117. <div id="GameDiv">
  118. <canvas id="GameCanvas" oncontextmenu="event.preventDefault()" tabindex="0"></canvas>
  119. <div id="splash">
  120. <div class="progress-bar stripes">
  121. <span style="width: 0%"></span>
  122. </div>
  123. </div>
  124. </div>
  125. <script src="src/settings.js" charset="utf-8"></script>
  126. <script type="text/javascript" src="//h5sdk.szzyqw.com/js/api/h5asdk.api.js"></script>
  127. <script src="main.js" charset="utf-8"></script>
  128. <!-- 开启vConsole -->
  129. <!-- <script src="vconsole.min.26a31.js"></script> -->
  130. <script type="text/javascript">
  131. (function () {
  132. // open web debugger console
  133. if (typeof VConsole !== 'undefined') {
  134. window.vConsole = new VConsole();
  135. }
  136. // 修复iOS Safari右侧黑屏问题
  137. function updateGameDivSize() {
  138. var height = window.innerHeight || document.documentElement.clientHeight;
  139. var width = window.innerWidth || document.documentElement.clientWidth;
  140. var gameDiv = document.getElementById('GameDiv');
  141. // 在iOS设备上,强制使用100%宽度以避免右侧黑屏
  142. var isIOS = /ipad|iphone|ipod/i.test(navigator.userAgent.toLowerCase());
  143. if (isIOS) {
  144. // iOS设备上使用100%宽度,确保完全覆盖屏幕
  145. gameDiv.style.width = '100%';
  146. gameDiv.style.height = '100%';
  147. gameDiv.style.left = '0';
  148. gameDiv.style.right = '0';
  149. // 强制重绘以解决某些iOS版本的渲染问题
  150. document.body.style.display = 'none';
  151. setTimeout(function() {
  152. document.body.style.display = '';
  153. }, 0);
  154. } else {
  155. // 非iOS设备使用原来的计算方式
  156. var fixWidth = height / 1334 * 750;
  157. gameDiv.style.height = `${height}px`;
  158. if (fixWidth > width) {
  159. gameDiv.style.width = `${width}px`;
  160. } else {
  161. gameDiv.style.width = `${fixWidth}px`;
  162. }
  163. }
  164. }
  165. // 初始调整大小
  166. updateGameDivSize();
  167. // 添加视口调整事件监听
  168. window.addEventListener('resize', updateGameDivSize, false);
  169. // iOS设备上,添加orientationchange事件监听
  170. if (/ipad|iphone|ipod/i.test(navigator.userAgent.toLowerCase())) {
  171. window.addEventListener('orientationchange', function() {
  172. // 延迟执行以确保iOS完成旋转
  173. setTimeout(updateGameDivSize, 200);
  174. }, false);
  175. }
  176. var debug = window._CCSettings.debug;
  177. var splash = document.getElementById('splash');
  178. splash.style.display = 'block';
  179. function loadScript(moduleName, cb) {
  180. function scriptLoaded() {
  181. document.body.removeChild(domScript);
  182. domScript.removeEventListener('load', scriptLoaded, false);
  183. cb && cb();
  184. };
  185. var domScript = document.createElement('script');
  186. domScript.async = true;
  187. domScript.src = moduleName;
  188. domScript.addEventListener('load', scriptLoaded, false);
  189. document.body.appendChild(domScript);
  190. }
  191. loadScript(debug ? 'cocos2d-js.js' : 'cocos2d-js-min.6f011.js', function () {
  192. if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) {
  193. loadScript(debug ? 'physics.js' : 'physics-min.js', window.boot);
  194. }
  195. else {
  196. window.boot();
  197. }
  198. });
  199. })();
  200. </script>
  201. </body>
  202. </html>