社团动态 WAI科技社官网社区更新贴 WAI 2022-01-13 2026-02-05 Jacob 2022年1月13日 v1.0.0 👑Successor 📅 2022年1月12日 🌟 WAI 科技社区上线,替代原官网
🔧 原官网原创文章迁移完毕 💡 接入了腾讯云存储服务
🙏 纪念逝去的博客官网以及曾经的 WAI 社区。
Jacob 2022年1月13日 🍪 画饼专用楼:
开发中的功能……
接入 QQ 登录 接入 Push 推送服务 论坛小程序 移动端导航栏 页脚备案声明 新闻首页 深色主题 Seele 觉得很赞
Jacob 2022年1月23日 v1.0.1 👑Successor 📅 2022年1月23日 🌟 小幅度更新
🔧 修复了 www 前缀的跳转问题 🔧 修复了站点地图 503 的问题 🔧 修复了帖子图片表达式错误的问题 💡 接入了 Pusher 服务 💡 增加了文件附件上传功能 💡 增加了一些新 Tag 💡 增加了多语言切换
Jacob 2022年1月26日 已编辑 v1.1.0 👑Successor 📅 2022年1月26日 🌟 功能批量更新
🔧 使用了哆啦A梦的时光机,将旧文章送回它们的时空 (改数据库眼都看瞎了 💡 新增支持通过 AV、BV、AC、SM 号及分享链接插入 A、B、N 站视频 💡 新增支持通过 YouTube 分享链接插入视频 💡 新增支持通过腾讯视频分享链接插入视频 💡 新增支持通过网易云音乐分享链接插入歌曲 💡 新增自动识别图片、视频等链接,转换为易于阅读的嵌入式内容 💡 新增新用户自动开启“有人回复了我”“有人@我”时发送邮件的通知 💡 新增支持作为 PWA 应用安装到手机or电脑 💡 新增问答区支持提问者选出“优质回答” 💡 新增草稿功能,刷新网页也不会丢失内容 💡 新增定时发布 💡 新增支持发布投票
Jacob 2022年2月2日 v1.1.1 👑Successor 📅 2022年2月2日 🌟 小幅度更新
🔧 正确悬挂了 ICP 备案号 💡 新增深色模式并支持自动切换 💡 新增网页页脚版权信息 💡 新增网页页脚喷水🐋动画 💡 新增网站状态监控页面 💡 新增顶部导航栏 💡 新增 WAI 金色大厅
附上 Excel 公式
1 =IF(LEN(A1)>2;RIGHT(A1;LEN(A1)-1);A1)
Jacob 2022年2月3日 已编辑 v1.1.2 👑Successor 📅 2022年2月3日 🌟 小幅度更新
🔧 修复了导航栏链接错误问题 🔧 修复了图片上传报错的问题 💡 新增邮件美化 💡 新增第三方登录 💡 你可以添加社交媒体链接到自己的主页里啦 💡 新增用户目录
Jacob 2022年2月5日 已编辑 v1.1.3 👑Successor 📅 2022年2月5日 🌟 法律更新
🔧 修复了页脚链接无法点击的问题 💡 完善了导航栏链接 💡 新增社区协议 💡 页脚添加计时器 💡 完善了首页看板链接 💡 新增个性签名功能
页脚代码备份
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 <!doctype html > <script async src ="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js" > </script > <script > document .addEventListener ('click' , event => { let t = event.target ; if (t.matches ('.Post-body a' )) { let url = new URL (t.href ); if (url.origin == document .location .origin ) { t.removeAttribute ('target' ); t.removeAttribute ('rel' ); } else { t.setAttribute ('target' , '_blank' ); } } }, false ); </script > <script > window.onload = function () { $('.Afrux-NewsWidget-line').each((i, item) => { let match = item.innerHTML.match('[a-zA-z]+://[^\s]*'); if (math) { $(item).html(`<a href ="${match.input.substring(match.index)}" style ="display:flex;align-items:center;" > ${match.input.substring(0, match.index).trim()} <svg xmlns ="http://www.w3.org/2000/svg" aria-hidden ="true" x ="0px" y ="0px" viewBox ="0 0 100 100" width ="15" height ="15" class ="icon outbound" > <path fill ="currentColor" d ="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z" > </path > <polygon fill ="currentColor" points ="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9" > </polygon > </svg > </a > `) } }) } </script > <footer > <div class ="site-footer" > <div style ="color: rgb(137, 137, 140);font-size:0.9em;" class ="footer-container rm-link-color" > <script > var start_time = new Date (); var end_time = "" ; var loadt = setInterval (function ( ) { if (document .readyState == "complete" ) { showLoadTime (); } }, 500 ) function showLoadTime ( ) { end_time = new Date (); loadtime_span.innerHTML = "T " + (end_time.getTime () - start_time.getTime ()) + " ms" ; clearInterval (loadt); } </script > <span id ="ip_span" align =center > </span > <script src ="https://pv.sohu.com/cityjson?ie=utf-8" > </script > <script type ="text/javascript" > ip_span.innerHTML = returnCitySN["cname" ] + " " + returnCitySN["cip" ]; </script > <span class ="mx-2" > |</span > <span id ="loadtime_span" > T</span > <span class ="mx-2" > |</span > <span > PV</span > <span id ="busuanzi_value_site_pv" > </span > <span class ="mx-2" > |</span > <a id ="stats" href ="https://stats.uptimerobot.com/EvJjRilBPL" target ="_blank" > </a > </p > <p > <a id ="prot_span" href ="https://www.waitech.cn/d/60" > </a > <span class ="mx-2" > |</span > <a id ="rept_span" href ="mailto:bbs@waitech.cn" > </a > <span class ="mx-2" > |</span > <span id ="ver_span" > </span > <p id ="right_span" > </p > </p > <p > <span id ="runtime_span" > WAI 科技社🔋已成立</span > </p > <p > <span > © 2017-2022 WAI Tech Group</span > <span class ="mx-2" > |</span > <a href ="https://beian.miit.gov.cn/" target ="_blank" > 粤 ICP 备 20025819 号 - 1</a > </p > <script type ="text/javascript" > var site_version = "1.1.x-Successor" ; var lang = document .getElementsByTagName ("html" ); var userLang = lang[0 ].getAttribute ("lang" ); if (userLang.includes ("zh" )) { stats.innerHTML = "状态" ; prot_span.innerHTML = "社区规范" ; rept_span.innerHTML = "违法和不良信息举报" ; ver_span.innerHTML = "版本 " + site_version; right_span.innerHTML = "本站由 WAI 科技社 创建并运行。<a href=\"https://www.waitech.cn/d/20\"><i class=\"fas fa-info-circle\"></i> 了解 WAI 科技社</a>" ; } else { stats.innerHTML = "Status" ; prot_span.innerHTML = "Protocol" ; rept_span.innerHTML = "Report" ; ver_span.innerHTML = "Version " + site_version; right_span.innerHTML = "This site is created and running by WAI Tech Group. Read more about <a href=\"https://www.waitech.cn\"><i class=\"fas fa-info-circle\"></i> WAI Tech Group</a>." ; } </script > </div > </div > <div id ="flyfish" class ="fly-fish" height ="200" > </div > </footer > <script src ="https://discuss.flarum.org.cn/fish.js" > </script > <script > (function ( ) { var OriginTitile = document .title , titleTime; document .addEventListener ('visibilitychange' , function ( ) { if (document .hidden ) { document .title = '死鬼去哪里了!' ; clearTimeout (titleTime); } else { document .title = '(つェ⊂)你回来啦!' ; titleTime = setTimeout (function ( ) { document .title = OriginTitile ; }, 2000 ); } }); })(); </script > <script src ="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js" > </script > <script type ="text/javascript" > var a_idx = 0 ; jQuery (document ).ready (function ($ ) { $("body" ).click (function (e ) { var a = new Array ("富强" , "民主" , "文明" , "和谐" , "自由" , "平等" , "公正" , "法治" , "爱国" , "敬业" , "诚信" , "友善" ); var $i = $("<span/>" ).text (a[a_idx]); a_idx = (a_idx + 1 ) % a.length ; var x = e.pageX , y = e.pageY ; $i.css ({ "z-index" : 100000000 , "top" : y - 20 , "left" : x, "position" : "absolute" , "font-weight" : "bold" , "color" : "#ff6651" }); $("body" ).append ($i); $i.animate ({ "top" : y - 180 , "opacity" : 0 }, 1500 , function ( ) { $i.remove (); }); }); }); </script > <script type ="text/javascript" > function show_runtime ( ) { window .setTimeout ("show_runtime()" , 1000 ); X = new Date ("12/24/2017 00:00:00" ); Y = new Date (); T = (Y.getTime () - X.getTime ()); M = 24 * 60 * 60 * 1000 ; a = T / M; A = Math .floor (a); b = (a - A) * 24 ; B = Math .floor (b); c = (b - B) * 60 ; C = Math .floor ((b - B) * 60 ); D = Math .floor ((c - C) * 60 ); runtime_span.innerHTML = "WAI 科技社🔋已成立 " + A + " 天 " + B + " 小时 " + C + " 分 " + D + " 秒" } show_runtime (); </script >
lc6464 2022年2月5日
Finished! 现在改好了! @”Jacob”#p154
1 2 3 <script defer src ="https://cdn.jsdelivr.net/gh/lc6464/js@main/timer/timer.min.js" > </script > <script defer src ="xxxxxxxxx" > </script >
xxxxxxxxx 文件内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 window .runtime_span .innerHTML = "WAI 科技社已成立 <span id=\"runTimeDays\"></span> 天 <span id=\"runTimeHours\"></span> 小时 <span id=\"runTimeMinutes\"></span> 分 <span id=\"runTimeSeconds\"></span> 秒" ;const runTime = { timer : new Timer ("2017-12-24T00:00:00+08:00" ), days : document .querySelector ("#runTimeDays" ), hours : document .querySelector ("#runTimeHours" ), minutes : document .querySelector ("#runTimeMinutes" ), seconds : document .querySelector ("#runTimeSeconds" ), refresh : function ( ) { const timing = this .timer .timing (); this .days .innerText = timing.days ; this .hours .innerText = timing.hours ; this .minutes .innerText = timing.minutes ; this .seconds .innerText = timing.seconds ; } }; runTime.refresh (); runTime.intervalID = setInterval (runTime.refresh .bind (runTime), 500 );
Jacob Jacob 在线注册于 2022年1月12日0 次助人 科技社 2018 届社长
2022年2月5日 已编辑 v1.1.4 👑Successor 📅 2022年2月5日 🌟 计时器更新
🔧 修复了页脚计时器的时区问题 💡 完善了页脚信息 💡 换用了 lc6464 的计时库 💡 计时器精确到分钟
Jacob 2024年2月7日 已编辑 史诗级更新!
v2.0.0 👑Successor 📅 2024年2月7日 🌟 超级无敌跨版本大更新
💡 更新 flarum 版本到 v1.8.5 🔧 更新了 Copyright 的年份
lc6464 2024年6月9日 Jacob Copyright 可以考虑动态渲染。
Jacob 2024年8月12日 lc6464 是可以,不过我觉得手动可以记录一下多久没维护了🌚
Jacob 2024年8月12日 土豆服务器又挪地方了!
v2.0.1 👑Successor 📅 2024年8月12日 🌟 服务器挪阿里云啦!
💡 优化了Footer,使用异步加载避免拖慢网页 💡 全体插件大更新 🔧 使用AI优化了Footer代码,去除了失效的资源
新的 Footer:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 <!doctype html > <footer > <div class ="site-footer" > <div class ="footer-container rm-link-color" style ="color: rgb(137, 137, 140); font-size: 0.9em;" > <p > <span class ="mx-2" > 延迟</span > <span id ="loadtime_span" > 0</span > <span class ="mx-2" > ms | 欢迎第</span > <span id ="busuanzi_value_site_pv" > 1</span > <span class ="mx-2" > 位朋友 |</span > <a id ="stats" href ="https://stats.uptimerobot.com/EvJjRilBPL" target ="_blank" > 状态</a > </p > <p > <a id ="prot_span" href ="https://www.waitech.cn/d/60" > 社区规范</a > <span class ="mx-2" > |</span > <a id ="rept_span" href ="mailto:bbs@waitech.cn" > 违法和不良信息举报</a > <span class ="mx-2" > |</span > <span id ="ver_span" > 版本 Successor</span > </p > <p id ="right_span" > 本站由 WAI 科技社 创建并运行。 <a href ="https://www.waitech.cn/d/20" > <i class ="fas fa-info-circle" > </i > 了解 WAI 科技社 </a > </p > <p > WAI 科技社 <span id ="runtime_span" > 成立于 2017 年 12 月 24 日</span > </p > <p > <span > ©2017-2024 WAI</span > <span class ="mx-2" > |</span > <a href ="https://beian.miit.gov.cn/" target ="_blank" > 粤 ICP 备 20025819 号 - 1</a > </p > </div > </div > <div id ="flyfish" class ="fly-fish" height ="200" > </div > </footer > <script async src ="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js" > </script > <script async src ="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js" > </script > <script async src ="https://discuss.flarum.org.cn/fish.js" > </script > <script > document .addEventListener ('click' , event => { let t = event.target ; if (t.matches ('.Post-body a' )) { let url = new URL (t.href ); if (url.origin == document .location .origin ) { t.removeAttribute ('target' ); t.removeAttribute ('rel' ); } else { t.setAttribute ('target' , '_blank' ); } } }, false ); window .onload = function ( ) { $('.Afrux-NewsWidget-line' ).each ((i, item ) => { let match = item.innerHTML .match ('[a-zA-z]+://[^\s]*' ); if (match) { $(item).html (`<a href="${match.input.substring(match.index)} " style="display:flex;align-items:center;">${match.input.substring(0 , match.index).trim()} <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>` ); } }); } var start_time = new Date (); var loadt = setInterval (function ( ) { if (document .readyState == "complete" ) { showLoadTime (); } }, 500 ); function showLoadTime ( ) { var end_time = new Date (); document .getElementById ('loadtime_span' ).innerHTML = (end_time.getTime () - start_time.getTime ()); clearInterval (loadt); } (function ( ) { var OriginTitle = document .title , titleTime; document .addEventListener ('visibilitychange' , function ( ) { if (document .hidden ) { document .title = '死鬼去哪里了!' ; clearTimeout (titleTime); } else { document .title = '(つェ⊂)你回来啦!' ; titleTime = setTimeout (function ( ) { document .title = OriginTitle ; }, 2000 ); } }); })(); var a_idx = 0 ; jQuery (document ).ready (function ($ ) { $("body" ).click (function (e ) { var a = new Array ("富强" , "民主" , "文明" , "和谐" , "自由" , "平等" , "公正" , "法治" , "爱国" , "敬业" , "诚信" , "友善" ); var $i = $("<span/>" ).text (a[a_idx]); a_idx = (a_idx + 1 ) % a.length ; var x = e.pageX , y = e.pageY ; $i.css ({ "z-index" : 100000000 , "top" : y - 20 , "left" : x, "position" : "absolute" , "font-weight" : "bold" , "color" : "#ff6651" }); $("body" ).append ($i); $i.animate ({ "top" : y - 180 , "opacity" : 0 }, 1500 , function ( ) { $i.remove (); }); }); }); </script > <script > var now = new Date (); function createtime ( ) { var grt = new Date ("2017-12-24T18:30:00+08:00" ); now.setTime (now.getTime () + 250 ); days = (now - grt) / 1000 / 60 / 60 / 24 ; dnum = Math .floor (days); hours = (now - grt) / 1000 / 60 / 60 - (24 * dnum); hnum = Math .floor (hours); if (String (hnum).length == 1 ) { hnum = "0" + hnum; } minutes = (now - grt) / 1000 / 60 - (24 * 60 * dnum) - (60 * hnum); mnum = Math .floor (minutes); if (String (mnum).length == 1 ) { mnum = "0" + mnum; } seconds = (now - grt) / 1000 - (24 * 60 * 60 * dnum) - (60 * 60 * hnum) - (60 * mnum); snum = Math .round (seconds); if (String (snum).length == 1 ) { snum = "0" + snum; } document .getElementById ("runtime_span" ).innerHTML = "已成立 " + dnum + " 天 " + hnum + " 小时 " + mnum + " 分 " + snum + " 秒" ; } setInterval ("createtime()" , 250 ); </script >
Jacob 2026年1月7日 没钱啦!服务器流落阿美莉卡!