ソースを参照

添加新图片并删除旧样式文件

添加了两张新的图片资源,并从文档中移除了不再需要的CSS和JS文件。这些更改有助于保持项目的整洁并更新视觉内容。
SongZihuan 3 ヶ月 前
コミット
5d56c8ef1a
42 ファイル変更213 行追加74 行削除
  1. 1 1
      docs/404.html
  2. 1 1
      docs/contributors.html
  3. BIN
      docs/images/zsxq-cas.35bae7ff2a3be9d41d950ba9369f2bc5.png
  4. BIN
      docs/images/zsxq-xryhj.95c80f51d4959a34aaf0c68c31ec3944.png
  5. 0 1
      docs/index.html
  6. 0 1
      docs/js/common.ffb41852b9cda0360549.bundle.js
  7. 0 0
      docs/js/common.ffb41852b9cda0360549.bundle.js.LICENSE.txt
  8. 0 0
      docs/js/contributors.ffb41852b9cda0360549.bundle.js
  9. 0 0
      docs/js/index.ffb41852b9cda0360549.bundle.js
  10. 0 0
      docs/js/leave.ffb41852b9cda0360549.bundle.js
  11. 0 0
      docs/js/notfound.ffb41852b9cda0360549.bundle.js
  12. 0 0
      docs/js/sponsors.ffb41852b9cda0360549.bundle.js
  13. 0 0
      docs/js/sponsorsnow.ffb41852b9cda0360549.bundle.js
  14. 1 0
      docs/js/zsxq.ffb41852b9cda0360549.bundle.js
  15. 1 1
      docs/leave.html
  16. 1 1
      docs/sponsors-now.html
  17. 1 1
      docs/sponsors.html
  18. 0 0
      docs/style/common.ffb41852b9cda0360549.bundle.css
  19. 0 0
      docs/style/contributors.ffb41852b9cda0360549.bundle.css
  20. 1 1
      docs/style/index.ffb41852b9cda0360549.bundle.css
  21. 0 0
      docs/style/leave.ffb41852b9cda0360549.bundle.css
  22. 0 0
      docs/style/notfound.ffb41852b9cda0360549.bundle.css
  23. 0 0
      docs/style/sponsors.ffb41852b9cda0360549.bundle.css
  24. 0 1
      docs/style/sponsorsnow.42be61e963afa2037e38.bundle.css
  25. 1 0
      docs/style/sponsorsnow.ffb41852b9cda0360549.bundle.css
  26. 1 0
      docs/style/zsxq.ffb41852b9cda0360549.bundle.css
  27. 1 0
      docs/zsxq.html
  28. BIN
      src/assets/image/zsxq-cas.png
  29. BIN
      src/assets/image/zsxq-xryhj.png
  30. 47 49
      src/common.js
  31. 6 1
      src/html/index.html
  32. 1 3
      src/html/sponsors-now.html
  33. 36 0
      src/html/zsxq.html
  34. 2 0
      src/js/leave.js
  35. 5 5
      src/sponsors-now.js
  36. 1 1
      src/style/index.css
  37. 7 5
      src/style/sponsors-now.css
  38. 57 0
      src/style/zsxq.css
  39. 15 0
      src/zsxq.js
  40. 8 0
      webpack_config_dev.js
  41. 9 0
      webpack_config_github.js
  42. 9 1
      webpack_config_prod.js

+ 1 - 1
docs/404.html

@@ -1 +1 @@
-<!doctype html><html lang="zh"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>404 Not Found</title><link href="./style/common.42be61e963afa2037e38.bundle.css" rel="stylesheet"><link href="./style/notfound.42be61e963afa2037e38.bundle.css" rel="stylesheet"></head><body><div class="container"><header><h1>404 Not Found</h1></header><div class="main_box"><main><p>抱歉,您访问的页面不存在。</p><p><a href="/">返回首页</a></p></main></div><footer><div id="copyright-container"></div></footer></div><script defer="defer" src="./js/common.42be61e963afa2037e38.bundle.js"></script><script defer="defer" src="./js/notfound.42be61e963afa2037e38.bundle.js"></script></body></html>
+<!doctype html><html lang="zh"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>404 Not Found</title><link href="./style/common.ffb41852b9cda0360549.bundle.css" rel="stylesheet"><link href="./style/notfound.ffb41852b9cda0360549.bundle.css" rel="stylesheet"></head><body><div class="container"><header><h1>404 Not Found</h1></header><div class="main_box"><main><p>抱歉,您访问的页面不存在。</p><p><a href="/">返回首页</a></p></main></div><footer><div id="copyright-container"></div></footer></div><script defer="defer" src="./js/common.ffb41852b9cda0360549.bundle.js"></script><script defer="defer" src="./js/notfound.ffb41852b9cda0360549.bundle.js"></script></body></html>

+ 1 - 1
docs/contributors.html

@@ -1 +1 @@
-<!doctype html><html lang="zh"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>贡献者列表</title><link href="./style/common.42be61e963afa2037e38.bundle.css" rel="stylesheet"><link href="./style/contributors.42be61e963afa2037e38.bundle.css" rel="stylesheet"></head><body><div class="container"><header><h1>贡献者列表</h1></header><div class="main_box"><main><table id="contributor-table"><thead><tr><th>Logo</th><th>类型</th><th>名称</th><th>邮箱</th><th>联系电话</th><th>联系网站</th><th>贡献经历</th><th>备注</th></tr></thead><tbody></tbody></table></main></div><footer><div id="copyright-container"></div></footer></div><script defer="defer" src="./js/common.42be61e963afa2037e38.bundle.js"></script><script defer="defer" src="./js/contributors.42be61e963afa2037e38.bundle.js"></script></body></html>
+<!doctype html><html lang="zh"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>贡献者列表</title><link href="./style/common.ffb41852b9cda0360549.bundle.css" rel="stylesheet"><link href="./style/contributors.ffb41852b9cda0360549.bundle.css" rel="stylesheet"></head><body><div class="container"><header><h1>贡献者列表</h1></header><div class="main_box"><main><table id="contributor-table"><thead><tr><th>Logo</th><th>类型</th><th>名称</th><th>邮箱</th><th>联系电话</th><th>联系网站</th><th>贡献经历</th><th>备注</th></tr></thead><tbody></tbody></table></main></div><footer><div id="copyright-container"></div></footer></div><script defer="defer" src="./js/common.ffb41852b9cda0360549.bundle.js"></script><script defer="defer" src="./js/contributors.ffb41852b9cda0360549.bundle.js"></script></body></html>

BIN
docs/images/zsxq-cas.35bae7ff2a3be9d41d950ba9369f2bc5.png


BIN
docs/images/zsxq-xryhj.95c80f51d4959a34aaf0c68c31ec3944.png


ファイルの差分が大きいため隠しています
+ 0 - 1
docs/index.html


ファイルの差分が大きいため隠しています
+ 0 - 1
docs/js/common.ffb41852b9cda0360549.bundle.js


+ 0 - 0
docs/js/common.42be61e963afa2037e38.bundle.js.LICENSE.txt → docs/js/common.ffb41852b9cda0360549.bundle.js.LICENSE.txt


+ 0 - 0
docs/js/contributors.42be61e963afa2037e38.bundle.js → docs/js/contributors.ffb41852b9cda0360549.bundle.js


+ 0 - 0
docs/js/index.42be61e963afa2037e38.bundle.js → docs/js/index.ffb41852b9cda0360549.bundle.js


+ 0 - 0
docs/js/leave.42be61e963afa2037e38.bundle.js → docs/js/leave.ffb41852b9cda0360549.bundle.js


+ 0 - 0
docs/js/notfound.42be61e963afa2037e38.bundle.js → docs/js/notfound.ffb41852b9cda0360549.bundle.js


+ 0 - 0
docs/js/sponsors.42be61e963afa2037e38.bundle.js → docs/js/sponsors.ffb41852b9cda0360549.bundle.js


+ 0 - 0
docs/js/sponsorsnow.42be61e963afa2037e38.bundle.js → docs/js/sponsorsnow.ffb41852b9cda0360549.bundle.js


+ 1 - 0
docs/js/zsxq.ffb41852b9cda0360549.bundle.js

@@ -0,0 +1 @@
+(()=>{"use strict";var e={p:"/"};const c=`<p>Copyright &copy; ${(new Date).getFullYear()} 宋子桓(Song Zihuan). All rights reserved.</p>`,r=document.getElementById("copyright-container");r&&(r.innerHTML=c);const n=e.p+"images/zsxq-cas.35bae7ff2a3be9d41d950ba9369f2bc5.png",o=e.p+"images/zsxq-xryhj.95c80f51d4959a34aaf0c68c31ec3944.png";window.ZSXQ={qrcode:n,xryhj:o};const t=document.querySelector("#zsxq-cas"),s=document.querySelector("#zsxq-xryhq");t&&(t.src=window.ZSXQ.qrcode),s&&(s.src=window.ZSXQ.xryhj)})();

+ 1 - 1
docs/leave.html

@@ -1 +1 @@
-<!doctype html><html lang="zh"><head><meta charset="UTF-8"><title>即将前往...</title><link href="./style/common.42be61e963afa2037e38.bundle.css" rel="stylesheet"><link href="./style/leave.42be61e963afa2037e38.bundle.css" rel="stylesheet"></head><body><div class="container"><header><h1>您即将离开本站</h1></header><div class="main_box"><main><p>您即将离开本站,前往赞助者/贡献者提供的个人或商业网站。本网站不对此些网站做任何担保,请您小心谨慎,谨防上当受骗。</p><p>溃烂和操作相关网页时,请遵守当地法律法规和中国的法律法规,谢谢。</p><p id="destinationURL"></p><div class="buttons"><button class="button" onclick="gotoURL()">确定</button> <button class="button" onclick="closePage()">取消</button></div></main></div><footer><div id="copyright-container"></div></footer></div><script defer="defer" src="./js/common.42be61e963afa2037e38.bundle.js"></script><script defer="defer" src="./js/leave.42be61e963afa2037e38.bundle.js"></script></body></html>
+<!doctype html><html lang="zh"><head><meta charset="UTF-8"><title>即将前往...</title><link href="./style/common.ffb41852b9cda0360549.bundle.css" rel="stylesheet"><link href="./style/leave.ffb41852b9cda0360549.bundle.css" rel="stylesheet"></head><body><div class="container"><header><h1>您即将离开本站</h1></header><div class="main_box"><main><p>您即将离开本站,前往赞助者/贡献者提供的个人或商业网站。本网站不对此些网站做任何担保,请您小心谨慎,谨防上当受骗。</p><p>溃烂和操作相关网页时,请遵守当地法律法规和中国的法律法规,谢谢。</p><p id="destinationURL"></p><div class="buttons"><button class="button" onclick="gotoURL()">确定</button> <button class="button" onclick="closePage()">取消</button></div></main></div><footer><div id="copyright-container"></div></footer></div><script defer="defer" src="./js/common.ffb41852b9cda0360549.bundle.js"></script><script defer="defer" src="./js/leave.ffb41852b9cda0360549.bundle.js"></script></body></html>

+ 1 - 1
docs/sponsors-now.html

@@ -1 +1 @@
-<!doctype html><html lang="zh"><head><meta charset="UTF-8"><title>扫码立即赞助</title><link href="./style/common.42be61e963afa2037e38.bundle.css" rel="stylesheet"><link href="./style/sponsorsnow.42be61e963afa2037e38.bundle.css" rel="stylesheet"></head><body><div class="container"><header><h1>支付宝/微信支付 - 扫码立即赞助</h1></header><div class="main_box"><main><p>Hello,您可以立即通过支付宝或者微信支付向我赞助任何金额。当然,请留下您的信息,以便我们公开展示您的赞助!</p><p>当然,您也可以通过 <a href="https://afdian.com/a/SongZihuan" target="_blank">爱发电</a> 进行赞助。</p><p>注意:赞助 <span class="import_red">¥5.00 </span>以上可以与我取得便捷的微信联系方式,与我进行技术上的沟通。您可以将您的联系方式和赞助订单支付截图(包含订单号)发送到邮箱:<a href="mailto://songzihuan@song-zh.com">songzihuan@song-zh.com</a>,我会及时联系您。</p><div class="pay-container"><div class="img-box"><img id="wechat_pay" class="pay-img" alt="微信支付码"/></div><div class="img-box"><img id="zhifubao_pay" class="pay-img" alt="支付宝支付码"></div></div></main></div><footer><div id="copyright-container"></div><div id="tcp-container"></div><div id="wangan-container"></div></footer></div><script defer="defer" src="./js/common.42be61e963afa2037e38.bundle.js"></script><script defer="defer" src="./js/sponsorsnow.42be61e963afa2037e38.bundle.js"></script></body></html>
+<!doctype html><html lang="zh"><head><meta charset="UTF-8"><title>扫码立即赞助</title><link href="./style/common.ffb41852b9cda0360549.bundle.css" rel="stylesheet"><link href="./style/sponsorsnow.ffb41852b9cda0360549.bundle.css" rel="stylesheet"></head><body><div class="container"><header><h1>支付宝/微信支付 - 扫码立即赞助</h1></header><div class="main_box"><main><p>Hello,您可以立即通过支付宝或者微信支付向我(们)赞助任何金额。当然,请留下您的信息,以便我公开展示您的赞助!</p><p>当然,您也可以通过 <a href="https://afdian.com/a/SongZihuan" target="_blank">爱发电</a> 进行赞助。</p><p>注意:赞助 <span class="import_red">¥5.00 </span>sponsors-now.html以上可以与我(们)取得便捷的微信联系方式,与我(们)进行技术上的沟通。您可以将您的联系方式和赞助订单支付截图(包含订单号)发送到邮箱:<a href="mailto://songzihuan@song-zh.com">songzihuan@song-zh.com</a>,我(们)会及时联系您。</p><div class="pay-container"><div class="img-box"><img id="wechat_pay" class="pay-img" alt="微信支付码"/></div><div class="img-box"><img id="zhifubao_pay" class="pay-img" alt="支付宝支付码"></div></div></main></div><footer><div id="copyright-container"></div></footer></div><script defer="defer" src="./js/common.ffb41852b9cda0360549.bundle.js"></script><script defer="defer" src="./js/sponsorsnow.ffb41852b9cda0360549.bundle.js"></script></body></html>

+ 1 - 1
docs/sponsors.html

@@ -1 +1 @@
-<!doctype html><html lang="zh"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>赞助者列表</title><link href="./style/common.42be61e963afa2037e38.bundle.css" rel="stylesheet"><link href="./style/sponsors.42be61e963afa2037e38.bundle.css" rel="stylesheet"></head><body><div class="container"><header><h1>赞助者列表</h1></header><div class="main_box"><main><table id="sponsor-table"><thead><tr><th>Logo</th><th>类型</th><th>名称</th><th>邮箱</th><th>联系电话</th><th>联系网站</th><th>赞助时间</th><th>赞助金额</th><th>累计赞助金额</th><th>备注</th></tr></thead><tbody></tbody></table></main></div><footer><div id="copyright-container"></div></footer></div><script defer="defer" src="./js/common.42be61e963afa2037e38.bundle.js"></script><script defer="defer" src="./js/sponsors.42be61e963afa2037e38.bundle.js"></script></body></html>
+<!doctype html><html lang="zh"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>赞助者列表</title><link href="./style/common.ffb41852b9cda0360549.bundle.css" rel="stylesheet"><link href="./style/sponsors.ffb41852b9cda0360549.bundle.css" rel="stylesheet"></head><body><div class="container"><header><h1>赞助者列表</h1></header><div class="main_box"><main><table id="sponsor-table"><thead><tr><th>Logo</th><th>类型</th><th>名称</th><th>邮箱</th><th>联系电话</th><th>联系网站</th><th>赞助时间</th><th>赞助金额</th><th>累计赞助金额</th><th>备注</th></tr></thead><tbody></tbody></table></main></div><footer><div id="copyright-container"></div></footer></div><script defer="defer" src="./js/common.ffb41852b9cda0360549.bundle.js"></script><script defer="defer" src="./js/sponsors.ffb41852b9cda0360549.bundle.js"></script></body></html>

+ 0 - 0
docs/style/common.42be61e963afa2037e38.bundle.css → docs/style/common.ffb41852b9cda0360549.bundle.css


+ 0 - 0
docs/style/contributors.42be61e963afa2037e38.bundle.css → docs/style/contributors.ffb41852b9cda0360549.bundle.css


+ 1 - 1
docs/style/index.42be61e963afa2037e38.bundle.css → docs/style/index.ffb41852b9cda0360549.bundle.css

@@ -1,2 +1,2 @@
-main{max-width:800px;margin:3rem auto;padding:2rem;background-color:#fff;box-shadow:0 0 10px rgba(0, 0, 0, 0.1);overflow-x:auto;display:block}p{margin-bottom:1rem}footer p{margin-bottom:0}
+main{max-width:900px;margin:3rem auto;padding:2rem;background-color:#fff;box-shadow:0 0 10px rgba(0, 0, 0, 0.1);overflow-x:auto;display:block}p{margin-bottom:1rem}footer p{margin-bottom:0}
 #WANGAN_LOGO{max-width:20px;max-height:20px}

+ 0 - 0
docs/style/leave.42be61e963afa2037e38.bundle.css → docs/style/leave.ffb41852b9cda0360549.bundle.css


+ 0 - 0
docs/style/notfound.42be61e963afa2037e38.bundle.css → docs/style/notfound.ffb41852b9cda0360549.bundle.css


+ 0 - 0
docs/style/sponsors.42be61e963afa2037e38.bundle.css → docs/style/sponsors.ffb41852b9cda0360549.bundle.css


+ 0 - 1
docs/style/sponsorsnow.42be61e963afa2037e38.bundle.css

@@ -1 +0,0 @@
-main{max-width:800px;margin:3rem auto;padding:2rem;background-color:#fff;box-shadow:0 0 10px rgba(0, 0, 0, 0.1);overflow-x:auto;display:block}p{margin-bottom:1rem}footer p{margin-bottom:0}.pay-container{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.pay-container .image-box{flex-grow:1;flex-shrink:0;flex-basis:45%;max-width:100%;box-sizing:border-box}@media(min-width: 768px){.pay-container .image-box{flex-basis:calc(45% - 5px)}}.pay-container .img-box .pay-img{width:350px}.import_red{color:red;text-decoration:underline}.import_red:hover{font-size:1.2rem;font-weight:bold}

+ 1 - 0
docs/style/sponsorsnow.ffb41852b9cda0360549.bundle.css

@@ -0,0 +1 @@
+main{max-width:800px;margin:3rem auto;padding:2rem;background-color:#fff;box-shadow:0 0 10px rgba(0, 0, 0, 0.1);overflow-x:auto;display:block}p{margin-bottom:1rem}footer p{margin-bottom:0}.pay-container{display:flex;flex-wrap:wrap;justify-content:center}.pay-container .img-box{flex-grow:1;flex-shrink:0;flex-basis:100%;max-width:100%;box-sizing:border-box;text-align:center}@media(min-width: 768px){.pay-container .img-box{flex-basis:calc(45% - 5px)}}.pay-container .img-box .pay-img{width:95%;margin-right:5px;margin-left:5px}.import_red{color:red;text-decoration:underline}.import_red:hover{font-size:1.2rem;font-weight:bold}

+ 1 - 0
docs/style/zsxq.ffb41852b9cda0360549.bundle.css

@@ -0,0 +1 @@
+main{max-width:800px;margin:3rem auto;padding:2rem;background-color:#fff;box-shadow:0 0 10px rgba(0, 0, 0, 0.1);overflow-x:auto;display:block}p{margin-bottom:1rem}footer p{margin-bottom:0}.zsxq-container{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.zsxq-container .zsxq-img-box{flex-grow:1;flex-shrink:0;flex-basis:100%;max-width:100%;box-sizing:border-box;text-align:center}@media(min-width: 768px){.zsxq-container .zsxq-img-box{flex-basis:calc(45% - 5px)}}.zsxq-container .zsxq-img-box .qrcode{width:95%;margin-right:5px;margin-left:5px}.import_red{color:red;text-decoration:underline}.import_red:hover{font-size:1.2rem;font-weight:bold}

+ 1 - 0
docs/zsxq.html

@@ -0,0 +1 @@
+<!doctype html><html lang="zh"><head><meta charset="UTF-8"><title>加入知识星球进行赞助</title><link href="./style/common.ffb41852b9cda0360549.bundle.css" rel="stylesheet"><link href="./style/zsxq.ffb41852b9cda0360549.bundle.css" rel="stylesheet"></head><body><div class="container"><header><h1>加入知识星球进行赞助</h1></header><div class="main_box"><main><p>Hello,您可以通过加入知识星球来赞助我们!现在加入, <span class="import_red">有新人优惠!</span></p><p>特别注意:新人优惠券 <span class="import_red">数量有限</span> ,有效期为 <span class="import_red">2025/01/28 12:00 - 2025/03/28 12:00</span></p><p>若您不方便扫码,可以点击链接加入星球:<a href="https://t.zsxq.com/jp5pp" target="_blank">t.zsxq.com/jp5pp</a><br/>您还可以点击链接领取新人优惠券:<a href="https://t.zsxq.com/vg0wr" target="_blank">t.zsxq.com/vg0wr</a></p><div class="zsxq-container"><div class="zsxq-img-box"><img id="zsxq-cas" class="qrcode" alt="知识星球二维码"/></div><div class="zsxq-img-box"><img id="zsxq-xryhq" class="qrcode" alt="知识星球新人优惠券"></div></div></main></div><footer><div id="copyright-container"></div></footer></div><script defer="defer" src="./js/common.ffb41852b9cda0360549.bundle.js"></script><script defer="defer" src="./js/zsxq.ffb41852b9cda0360549.bundle.js"></script></body></html>

BIN
src/assets/image/zsxq-cas.png


BIN
src/assets/image/zsxq-xryhj.png


+ 47 - 49
src/common.js

@@ -23,61 +23,61 @@ window.LogoBig = LogoBin
 window.jQuery = jQuery
 window.$ = jQuery
 
-const metaViewport = document.createElement('meta');
-metaViewport.setAttribute('name', 'viewport');
-metaViewport.setAttribute('content', 'width=device-width, initial-scale=1');
-document.head.appendChild(metaViewport);
-
-const metaDescription = document.createElement('meta');
-metaDescription.setAttribute('name', 'description');
-metaDescription.setAttribute('content', '这是宋子桓的贡献者列表和赞助者列表。');
-document.head.appendChild(metaDescription);
-
-const metaKeywords = document.createElement('meta');
-metaKeywords.setAttribute('name', 'keywords');
-metaKeywords.setAttribute('content', '宋子桓, Song Zihuan, Open Source, 开源, 贡献, 赞助, Github');
-document.head.appendChild(metaKeywords);
-
-const metaLang = document.createElement('meta');
-metaLang.setAttribute('http-equiv', 'Content-Language');
-metaLang.setAttribute('content', 'zh-CN'); // 例如,设定为简体中文
-document.head.appendChild(metaLang);
+const metaViewport = document.createElement('meta')
+metaViewport.setAttribute('name', 'viewport')
+metaViewport.setAttribute('content', 'width=device-width, initial-scale=1')
+document.head.appendChild(metaViewport)
+
+const metaDescription = document.createElement('meta')
+metaDescription.setAttribute('name', 'description')
+metaDescription.setAttribute('content', '这是宋子桓的贡献者列表和赞助者列表。')
+document.head.appendChild(metaDescription)
+
+const metaKeywords = document.createElement('meta')
+metaKeywords.setAttribute('name', 'keywords')
+metaKeywords.setAttribute('content', '宋子桓, Song Zihuan, Open Source, 开源, 贡献, 赞助, Github')
+document.head.appendChild(metaKeywords)
+
+const metaLang = document.createElement('meta')
+metaLang.setAttribute('http-equiv', 'Content-Language')
+metaLang.setAttribute('content', 'zh-CN') // 例如,设定为简体中文
+document.head.appendChild(metaLang)
 
 // Open Graph: 网页标题
-const metaOgTitle = document.createElement('meta');
-metaOgTitle.setAttribute('property', 'og:title');
-metaOgTitle.setAttribute('content', '宋子桓的项目贡献与赞助主页');
-document.head.appendChild(metaOgTitle);
+const metaOgTitle = document.createElement('meta')
+metaOgTitle.setAttribute('property', 'og:title')
+metaOgTitle.setAttribute('content', '宋子桓的项目贡献与赞助主页')
+document.head.appendChild(metaOgTitle)
 
 // Open Graph: 网页描述
-const metaOgDesc = document.createElement('meta');
-metaOgDesc.setAttribute('property', 'og:description');
-metaOgDesc.setAttribute('content', '这是宋子桓的贡献者列表和赞助者列表。');
-document.head.appendChild(metaOgDesc);
+const metaOgDesc = document.createElement('meta')
+metaOgDesc.setAttribute('property', 'og:description')
+metaOgDesc.setAttribute('content', '这是宋子桓的贡献者列表和赞助者列表。')
+document.head.appendChild(metaOgDesc)
 
 // Open Graph: 网页图片
-const metaOgImage = document.createElement('meta');
-metaOgImage.setAttribute('property', 'og:image');
-metaOgImage.setAttribute('content', window.LogoBig);
-document.head.appendChild(metaOgImage);
+const metaOgImage = document.createElement('meta')
+metaOgImage.setAttribute('property', 'og:image')
+metaOgImage.setAttribute('content', window.LogoBig)
+document.head.appendChild(metaOgImage)
 
 // Twitter Card: 卡片类型
-var metaTwitterCard = document.createElement('meta');
-metaTwitterCard.setAttribute('name', 'twitter:card');
-metaTwitterCard.setAttribute('content', 'summary_large_image');
-document.head.appendChild(metaTwitterCard);
+const metaTwitterCard = document.createElement('meta')
+metaTwitterCard.setAttribute('name', 'twitter:card')
+metaTwitterCard.setAttribute('content', 'summary_large_image')
+document.head.appendChild(metaTwitterCard)
 
 // Twitter Card: 网页标题
-var metaTwitterTitle = document.createElement('meta');
-metaTwitterTitle.setAttribute('name', 'twitter:title');
-metaTwitterTitle.setAttribute('content', '宋子桓的项目贡献与赞助主页');
-document.head.appendChild(metaTwitterTitle);
+const metaTwitterTitle = document.createElement('meta')
+metaTwitterTitle.setAttribute('name', 'twitter:title')
+metaTwitterTitle.setAttribute('content', '宋子桓的项目贡献与赞助主页')
+document.head.appendChild(metaTwitterTitle)
 
 // Twitter Card: 图片URL
-var metaTwitterImage = document.createElement('meta');
-metaTwitterImage.setAttribute('name', 'twitter:image');
-metaTwitterImage.setAttribute('content', window.LogoBig);
-document.head.appendChild(metaTwitterImage);
+const metaTwitterImage = document.createElement('meta')
+metaTwitterImage.setAttribute('name', 'twitter:image')
+metaTwitterImage.setAttribute('content', window.LogoBig)
+document.head.appendChild(metaTwitterImage)
 
 function setIcon() {
   // 动态设置favicon
@@ -89,8 +89,7 @@ function setIcon() {
 
 document.addEventListener('DOMContentLoaded', setIcon)
 
-const minWidth = 260;
-let innerHTML = ''
+const minWidth = 260
 let loadInnerHTML = ''
 const emptyInnerHTML = () => `
 <style>
@@ -138,11 +137,10 @@ function handlerWindowResize() {
 }
 
 function handlerDocumentDOMContentLoaded() {
-  innerHTML = document.body.innerHTML
   if (window.innerWidth <= minWidth) {
     document.body.innerHTML = emptyInnerHTML()
   }
-  window.addEventListener('resize', handlerWindowResize);
+  window.addEventListener('resize', handlerWindowResize)
 }
 
 function handlerWindowLoad() {
@@ -151,5 +149,5 @@ function handlerWindowLoad() {
   }
 }
 
-document.addEventListener('DOMContentLoaded', handlerDocumentDOMContentLoaded);
-window.addEventListener('load', handlerWindowLoad);
+document.addEventListener('DOMContentLoaded', handlerDocumentDOMContentLoaded)
+window.addEventListener('load', handlerWindowLoad)

+ 6 - 1
src/html/index.html

@@ -12,14 +12,19 @@
     <div class="main_box">
         <main>
             <p>欢迎来到我(们)的项目贡献者与赞助者记录网站。这里,我(们)衷心感谢所有为我(们)的项目做出贡献的朋友和支持我(们)的赞助者。</p>
-            <p>目前,我(们)的赞助主要通过 <a href="https://afdian.com/a/SongZihuan" target="_blank">爱发电</a>
+            <p>目前,我(们)的赞助主要通过
+                <a href="https://afdian.com/a/SongZihuan" target="_blank">爱发电</a>
+                和
+                <a href="https://wx.zsxq.com/group/51111844184424" target="_blank">知识星球</a>
                 进行。如果您愿意支持我(们)的工作,非常欢迎您加入赞助行列。</p>
+            <p>通过赞助,您可以获得我(们)的一些帮助,例如:分享经验、讨论Bug。我们旨在建立开源互助的文明社团。不过,值得注意的是,我们更侧重技术本身,而不是求职时需要的八股文。</p>
             <p>我(们)的项目通常采用 <a href="https://mit-license.song-zh.com" target="_blank">MIT开源协议</a>,鼓励共享与创新。</p>
             <div class="buttons">
                 <a href="./contributors.html" class="button" target="_blank">贡献者页面</a>
                 <a href="./sponsors.html" class="button" target="_blank">赞助者页面</a>
                 <a href="./sponsors-now.html" class="button" target="_blank">扫码赞助</a>
                 <a href="https://afdian.com/a/SongZihuan" class="button" target="_blank">爱发电赞助</a>
+                <a href="./zsxq.html" class="button" target="_blank">加入知识星球(可领新人优惠券)</a>
             </div>
         </main>
     </div>

+ 1 - 3
src/html/sponsors-now.html

@@ -14,7 +14,7 @@
             <p>Hello,您可以立即通过支付宝或者微信支付向我(们)赞助任何金额。当然,请留下您的信息,以便我(们)公开展示您的赞助!</p>
             <p>当然,您也可以通过 <a href="https://afdian.com/a/SongZihuan" target="_blank">爱发电</a>
                 进行赞助。</p>
-            <p>注意:赞助 <span class="import_red"> ¥5.00 </span> 以上可以与我(们)取得便捷的微信联系方式,与我(们)进行技术上的沟通。您可以将您的联系方式和赞助订单支付截图(包含订单号)发送到邮箱:<a href="mailto://songzihuan@song-zh.com">songzihuan@song-zh.com</a>,我(们)会及时联系您。</p>
+            <p>注意:赞助 <span class="import_red"> ¥5.00 </span> sponsors-now.html以上可以与我(们)取得便捷的微信联系方式,与我(们)进行技术上的沟通。您可以将您的联系方式和赞助订单支付截图(包含订单号)发送到邮箱:<a href="mailto://songzihuan@song-zh.com">songzihuan@song-zh.com</a>,我(们)会及时联系您。</p>
             <div class="pay-container">
                 <div class="img-box">
                     <img id="wechat_pay" class="pay-img" alt="微信支付码" />
@@ -27,8 +27,6 @@
     </div>
     <footer>
         <div id="copyright-container"></div>
-        <div id="tcp-container"></div>
-        <div id="wangan-container"></div>
     </footer>
 </div>
 </body>

+ 36 - 0
src/html/zsxq.html

@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+<html lang="zh">
+<head>
+    <meta charset="UTF-8">
+    <title>加入知识星球进行赞助</title>
+</head>
+<body>
+<div class="container">
+    <header>
+        <h1>加入知识星球进行赞助</h1>
+    </header>
+    <div class="main_box">
+        <main>
+            <p>Hello,您可以通过加入知识星球来赞助我们!现在加入, <span class="import_red"> 有新人优惠!</span> </p>
+            <p>特别注意:新人优惠券 <span class="import_red"> 数量有限</span> ,有效期为  <span class="import_red"> 2025/01/28 12:00 - 2025/03/28 12:00 </span></p>
+            <p>
+                若您不方便扫码,可以点击链接加入星球:<a href="https://t.zsxq.com/jp5pp" target="_blank">t.zsxq.com/jp5pp</a>
+                <br />
+                您还可以点击链接领取新人优惠券:<a href="https://t.zsxq.com/vg0wr" target="_blank">t.zsxq.com/vg0wr</a>
+            </p>
+            <div class="zsxq-container">
+                <div class="zsxq-img-box">
+                    <img id="zsxq-cas" class="qrcode" alt="知识星球二维码" />
+                </div>
+                <div class="zsxq-img-box">
+                    <img id="zsxq-xryhq" class="qrcode" alt="知识星球新人优惠券">
+                </div>
+            </div>
+        </main>
+    </div>
+    <footer>
+        <div id="copyright-container"></div>
+    </footer>
+</div>
+</body>
+</html>

+ 2 - 0
src/js/leave.js

@@ -5,10 +5,12 @@ if (!toURL) {
   window.close()
 }
 
+// eslint-disable-next-line no-unused-vars
 function gotoURL() {
   window.location.href = toURL
 }
 
+// eslint-disable-next-line no-unused-vars
 function closePage() {
   window.close()
 }

+ 5 - 5
src/sponsors-now.js

@@ -1,13 +1,13 @@
 import './js/copyright.js'
-import "./style/sponsors-now.css"
-import WechatPay from "./assets/image/wechat_pay.jpg"
-import AliPay from "./assets/image/zhifubao_pay.jpg"
+import './style/sponsors-now.css'
+import WechatPay from './assets/image/wechat_pay.jpg'
+import AliPay from './assets/image/zhifubao_pay.jpg'
 
 window.WechatPay = WechatPay
 window.AliPay = AliPay
 
-const img_wechat = document.querySelector("#wechat_pay")
-const img_alipay = document.querySelector("#zhifubao_pay")
+const img_wechat = document.querySelector('#wechat_pay')
+const img_alipay = document.querySelector('#zhifubao_pay')
 
 img_wechat && (img_wechat.src = window.WechatPay)
 img_alipay && (img_alipay.src = window.AliPay)

+ 1 - 1
src/style/index.css

@@ -1,6 +1,6 @@
 /* Main content styles */
 main {
-    max-width: 800px;
+    max-width: 900px;
     margin: 3rem auto;
     padding: 2rem;
     background-color: #fff;

+ 7 - 5
src/style/sponsors-now.css

@@ -20,27 +20,29 @@ footer p {
 .pay-container {
     display: flex;
     flex-wrap: wrap; /* 允许项目换行 */
-    gap: 20px; /* 项目间的间隔 */
     justify-content: center; /* 水平居中对齐 */
 }
 
-.pay-container .image-box {
+.pay-container .img-box {
     flex-grow: 1;
     flex-shrink: 0;
-    flex-basis: 45%;
+    flex-basis: 100%;
     max-width: 100%;
     box-sizing: border-box;
+    text-align: center;
 }
 
 /* 当屏幕宽度至少为768px时,图片横向排列 */
 @media (min-width: 768px) {
-    .pay-container .image-box {
+    .pay-container .img-box {
         flex-basis: calc(45% - 5px); /* 每个图片盒子占据50%宽度减去间隔的一半,保持间距 */
     }
 }
 
 .pay-container .img-box .pay-img {
-    width: 350px;
+    width: 95%;
+    margin-right: 5px;
+    margin-left: 5px;
 }
 
 .import_red {

+ 57 - 0
src/style/zsxq.css

@@ -0,0 +1,57 @@
+/* Main content styles */
+main {
+    max-width: 800px;
+    margin: 3rem auto;
+    padding: 2rem;
+    background-color: #fff;
+    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
+    overflow-x: auto; /* 当内容溢出时,自动添加滚动条 */
+    display: block;
+}
+
+p {
+    margin-bottom: 1rem;
+}
+
+footer p {
+    margin-bottom: 0;
+}
+
+.zsxq-container {
+    display: flex;
+    flex-wrap: wrap; /* 允许项目换行 */
+    gap: 20px; /* 项目间的间隔 */
+    justify-content: center; /* 水平居中对齐 */
+}
+
+.zsxq-container .zsxq-img-box {
+    flex-grow: 1;
+    flex-shrink: 0;
+    flex-basis: 100%;
+    max-width: 100%;
+    box-sizing: border-box;
+    text-align: center;
+}
+
+/* 当屏幕宽度至少为768px时,图片横向排列 */
+@media (min-width: 768px) {
+    .zsxq-container .zsxq-img-box {
+        flex-basis: calc(45% - 5px); /* 每个图片盒子占据50%宽度减去间隔的一半,保持间距 */
+    }
+}
+
+.zsxq-container .zsxq-img-box .qrcode {
+    width: 95%;
+    margin-right: 5px;
+    margin-left: 5px;
+}
+
+.import_red {
+    color: red;
+    text-decoration: underline;
+}
+
+.import_red:hover {
+    font-size: 1.2rem;
+    font-weight: bold;
+}

+ 15 - 0
src/zsxq.js

@@ -0,0 +1,15 @@
+import './js/copyright.js'
+import './style/zsxq.css'
+import qrcode from './assets/image/zsxq-cas.png'
+import xryhj from './assets/image/zsxq-xryhj.png'
+
+window.ZSXQ = {
+  qrcode: qrcode,
+  xryhj: xryhj
+}
+
+const img_qrcode = document.querySelector('#zsxq-cas')
+const img_xryhq = document.querySelector('#zsxq-xryhq')
+
+img_qrcode && (img_qrcode.src = window.ZSXQ.qrcode)
+img_xryhq && (img_xryhq.src = window.ZSXQ.xryhj)

+ 8 - 0
webpack_config_dev.js

@@ -28,6 +28,7 @@ const config = {
     contributors: path.resolve(__dirname, 'src/contributors.js'),
     sponsors: path.resolve(__dirname, 'src/sponsors.js'),
     sponsorsnow: path.resolve(__dirname, 'src/sponsors-now.js'),
+    zsxq: path.resolve(__dirname, 'src/zsxq.js'),
     notfound: path.resolve(__dirname, 'src/404.js')
   },
 
@@ -150,6 +151,13 @@ const config = {
       chunks: ['common', 'sponsorsnow'],
       publicPath: './'
     }),
+    new HtmlWebpackPlugin({
+      inject: 'body',
+      template: path.resolve(__dirname, 'src/html/zsxq.html'), //指定模板文件
+      filename: 'zsxq.html',
+      chunks: ['common', 'zsxq'],
+      publicPath: './'
+    }),
     new HtmlWebpackPlugin({
       inject: 'body',
       template: path.resolve(__dirname, 'src/html/404.html'), //指定模板文件

+ 9 - 0
webpack_config_github.js

@@ -42,6 +42,7 @@ const config = {
     contributors: path.resolve(__dirname, 'src/contributors.js'),
     sponsors: path.resolve(__dirname, 'src/sponsors.js'),
     sponsorsnow: path.resolve(__dirname, 'src/sponsors-now.js'),
+    zsxq: path.resolve(__dirname, 'src/zsxq.js'),
     notfound: path.resolve(__dirname, 'src/404.js')
   },
 
@@ -183,6 +184,14 @@ const config = {
       minify: html_minify,
       publicPath: './'
     }),
+    new HtmlWebpackPlugin({
+      inject: 'body',
+      template: path.resolve(__dirname, 'src/html/zsxq.html'), //指定模板文件
+      filename: 'zsxq.html',
+      chunks: ['common', 'zsxq'],
+      minify: html_minify,
+      publicPath: './'
+    }),
     new HtmlWebpackPlugin({
       inject: 'body',
       template: path.resolve(__dirname, 'src/html/404.html'), //指定模板文件

+ 9 - 1
webpack_config_prod.js

@@ -41,10 +41,10 @@ const config = {
     contributors: path.resolve(__dirname, 'src/contributors.js'),
     sponsors: path.resolve(__dirname, 'src/sponsors.js'),
     sponsorsnow: path.resolve(__dirname, 'src/sponsors-now.js'),
+    zsxq: path.resolve(__dirname, 'src/zsxq.js'),
     notfound: path.resolve(__dirname, 'src/404.js')
   },
 
-
   output: {
     path: path.resolve(__dirname, dist_name), //打包后的文件存放的地方
     filename: 'js/[name].[fullhash].bundle.js', //打包后输出文件的文件名
@@ -161,6 +161,14 @@ const config = {
       minify: html_minify,
       publicPath: './'
     }),
+    new HtmlWebpackPlugin({
+      inject: 'body',
+      template: path.resolve(__dirname, 'src/html/zsxq.html'), //指定模板文件
+      filename: 'zsxq.html',
+      chunks: ['common', 'zsxq'],
+      minify: html_minify,
+      publicPath: './'
+    }),
     new HtmlWebpackPlugin({
       inject: 'body',
       template: path.resolve(__dirname, 'src/html/contributors.html'), //指定模板文件

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません