privacy.html 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=yes, viewport-fit=cover">
  6. <title>好萌友隐私政策</title>
  7. <style>
  8. * {
  9. margin: 0;
  10. padding: 0;
  11. box-sizing: border-box;
  12. }
  13. body {
  14. background-color: #f5f7fb;
  15. font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  16. line-height: 1.5;
  17. padding: 20px 0 48px 0;
  18. }
  19. .privacy-container {
  20. max-width: 720px;
  21. margin: 0 auto;
  22. background-color: #ffffff;
  23. border-radius: 20px;
  24. box-shadow: 0 8px 24px rgba(0,0,0,0.05);
  25. overflow: hidden;
  26. padding: 28px 20px 40px 20px;
  27. }
  28. @media (min-width: 600px) {
  29. .privacy-container {
  30. padding: 40px 36px 52px 36px;
  31. }
  32. }
  33. h1 {
  34. font-size: 26px;
  35. font-weight: 700;
  36. text-align: center;
  37. margin-bottom: 8px;
  38. letter-spacing: -0.3px;
  39. }
  40. .update-date {
  41. text-align: center;
  42. font-size: 14px;
  43. border-bottom: 1px solid #eef2f6;
  44. padding-bottom: 20px;
  45. margin-bottom: 24px;
  46. }
  47. .update-date p {
  48. margin: 4px 0;
  49. }
  50. h2 {
  51. font-size: 20px;
  52. font-weight: 700;
  53. margin: 1.6em 0 0.8em 0;
  54. padding-left: 12px;
  55. border-left: 4px solid #ccc;
  56. }
  57. h3 {
  58. font-size: 18px;
  59. font-weight: 600;
  60. margin: 1.2em 0 0.5em 0;
  61. }
  62. h4 {
  63. font-size: 16px;
  64. font-weight: 600;
  65. margin: 1em 0 0.5em 0;
  66. }
  67. .sub-section {
  68. font-weight: 600;
  69. font-size: 16px;
  70. margin: 1em 0 0.3em 0;
  71. }
  72. p {
  73. font-size: 15px;
  74. margin-bottom: 0.9em;
  75. line-height: 1.55;
  76. }
  77. .text-muted {
  78. font-size: 14px;
  79. }
  80. strong, b {
  81. font-weight: 600;
  82. }
  83. ul, ol {
  84. margin: 0.6em 0 1em 1.8em;
  85. font-size: 15px;
  86. }
  87. li {
  88. margin: 0.5em 0;
  89. line-height: 1.5;
  90. }
  91. hr {
  92. margin: 28px 0;
  93. border: 0;
  94. height: 1px;
  95. background: #e0e7ed;
  96. }
  97. .contact-info {
  98. background-color: #f8fafc;
  99. border-radius: 16px;
  100. padding: 16px 20px;
  101. margin-top: 24px;
  102. font-size: 14px;
  103. }
  104. footer {
  105. margin-top: 32px;
  106. text-align: center;
  107. font-size: 12px;
  108. border-top: 1px solid #ecf3f9;
  109. padding-top: 24px;
  110. }
  111. a {
  112. text-decoration: none;
  113. word-break: break-all;
  114. }
  115. a:hover {
  116. text-decoration: underline;
  117. }
  118. .small-note {
  119. font-size: 13px;
  120. background: #f9fafc;
  121. padding: 10px 14px;
  122. border-radius: 12px;
  123. margin: 12px 0;
  124. }
  125. .sdk-table-like {
  126. background: #fefef9;
  127. border-left: 3px solid #d0dbe9;
  128. padding: 12px 18px;
  129. margin: 16px 0;
  130. border-radius: 14px;
  131. }
  132. @media (max-width: 480px) {
  133. .privacy-container {
  134. padding: 20px 16px 32px 16px;
  135. }
  136. h1 {
  137. font-size: 24px;
  138. }
  139. h2 {
  140. font-size: 19px;
  141. }
  142. }
  143. </style>
  144. </head>
  145. <body>
  146. <div class="privacy-container">
  147. <h1 id="privacy-title" style="text-align: center; margin-bottom: 20px;">好萌友隐私政策</h1>
  148. <div id="privacy-content" style="padding: 100px 0; text-align: center; color: #999; font-size: 16px;">
  149. 正在获取最新的隐私政策,请稍候...
  150. </div>
  151. <div id="privacy-footer" style="margin-top: 32px; text-align: center; font-size: 12px; border-top: 1px solid #ecf3f9; padding-top: 24px; color: #999;">
  152. © 好萌友APP · 重庆盈锐文化传播有限公司
  153. </div>
  154. </div>
  155. <script>
  156. (function() {
  157. var apiURL = 'http://www.hoomeng.pet/api/system/agreement/2';
  158. var headers = {
  159. 'clientid': 'fe63fea7be31b0200b496d08bc6b517d',
  160. 'X-Platform-Code': 'MfJkMNMW2JKXBuPcbP2rxkD3ynXmReAZZFm4fN7cAGwGJdKCmd',
  161. 'Content-Type': 'application/json'
  162. };
  163. var xhr = new XMLHttpRequest();
  164. xhr.open('GET', apiURL, true);
  165. for (var key in headers) {
  166. if (headers.hasOwnProperty(key)) {
  167. xhr.setRequestHeader(key, headers[key]);
  168. }
  169. }
  170. xhr.onreadystatechange = function() {
  171. if (xhr.readyState === 4) {
  172. var loaded = false;
  173. if (xhr.status === 200) {
  174. try {
  175. var response = JSON.parse(xhr.responseText);
  176. if (response && response.code === 200 && response.data) {
  177. var data = response.data;
  178. var title = data.title;
  179. var content = data.content;
  180. var decodedContent = content;
  181. if (content) {
  182. try {
  183. decodedContent = decodeURIComponent(escape(window.atob(content)));
  184. } catch (e) {
  185. decodedContent = content;
  186. }
  187. }
  188. if (decodedContent) {
  189. var titleEl = document.getElementById('privacy-title');
  190. var contentEl = document.getElementById('privacy-content');
  191. if (titleEl && title) titleEl.innerText = title;
  192. if (contentEl) {
  193. contentEl.style.padding = '0';
  194. contentEl.style.textAlign = 'left';
  195. contentEl.style.color = 'inherit';
  196. contentEl.style.fontSize = 'inherit';
  197. contentEl.innerHTML = decodedContent;
  198. }
  199. loaded = true;
  200. }
  201. }
  202. } catch (e) {
  203. console.error('Failed to parse dynamic privacy policy', e);
  204. }
  205. }
  206. if (!loaded) {
  207. var contentEl = document.getElementById('privacy-content');
  208. if (contentEl) {
  209. contentEl.innerText = '加载隐私政策失败,请检查网络连接后重试。';
  210. }
  211. }
  212. }
  213. };
  214. xhr.send();
  215. })();
  216. </script>
  217. </body>
  218. </html>