File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -116,7 +116,7 @@ <h3 data-zh="零影响生产" data-en="Zero Production Impact">零影响生产</
116116 < div class ="feature-card " style ="--card-accent:rgba(6,182,212,0.4) ">
117117 < div class ="feature-icon teal " aria-hidden ="true "> < svg width ="24 " height ="24 " viewBox ="0 0 24 24 " fill ="none " stroke ="currentColor " stroke-width ="1.8 " stroke-linecap ="round "> < path d ="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z "/> < path d ="M9 12l2 2 4-4 "/> </ svg > </ div >
118118 < h3 data-zh ="开源可审计 + 数据安全 " data-en ="Open-Source & Data Security "> 开源可审计 + 数据安全</ h3 >
119- < p data-zh ="巡检脚本全部开源在 GitHub ,可自行审计每一行代码。在线版文件处理完毕即删除;桌面版完全离线运行,数据不出内网 " data-en ="All scripts open-source on GitHub . Online files auto-deleted; Desktop runs fully offline "> 巡检脚本全部开源在 GitHub ,可自行审计每一行代码。在线版文件处理完毕即删除;桌面版完全离线运行,数据不出内网</ p >
119+ < p data-zh ="巡检脚本全部开源在 Gitee ,可自行审计每一行代码。在线版文件处理完毕即删除;桌面版完全离线运行,数据不出内网 " data-en ="All scripts open-source on Gitee . Online files auto-deleted; Desktop runs fully offline "> 巡检脚本全部开源在 Gitee ,可自行审计每一行代码。在线版文件处理完毕即删除;桌面版完全离线运行,数据不出内网</ p >
120120 </ div >
121121 </ div >
122122 </ div >
Original file line number Diff line number Diff line change @@ -1151,6 +1151,36 @@ if ('serviceWorker' in navigator) {
11511151 } ) ;
11521152}
11531153
1154+ /* ===== 脚本下载(fetch + Blob 绕过跨域 download 限制) ===== */
1155+ document . addEventListener ( 'click' , function ( e ) {
1156+ var btn = e . target . closest ( '.btn-dl' ) ;
1157+ if ( ! btn ) return ;
1158+ var url = btn . href ;
1159+ if ( ! url || url . indexOf ( 'gitee.com' ) === - 1 ) return ;
1160+ e . preventDefault ( ) ;
1161+ var filename = url . split ( '/' ) . pop ( ) || 'script' ;
1162+ btn . classList . add ( 'downloading' ) ;
1163+ var origText = btn . textContent ;
1164+ btn . textContent = '\u23F3' ;
1165+ fetch ( url ) . then ( function ( r ) {
1166+ if ( ! r . ok ) throw new Error ( r . status ) ;
1167+ return r . blob ( ) ;
1168+ } ) . then ( function ( blob ) {
1169+ var a = document . createElement ( 'a' ) ;
1170+ a . href = URL . createObjectURL ( blob ) ;
1171+ a . download = filename ;
1172+ document . body . appendChild ( a ) ;
1173+ a . click ( ) ;
1174+ document . body . removeChild ( a ) ;
1175+ URL . revokeObjectURL ( a . href ) ;
1176+ } ) . catch ( function ( ) {
1177+ window . open ( url , '_blank' ) ;
1178+ } ) . finally ( function ( ) {
1179+ btn . classList . remove ( 'downloading' ) ;
1180+ btn . textContent = origText ;
1181+ } ) ;
1182+ } ) ;
1183+
11541184/* ===== Stats Counter Animation ===== */
11551185( function ( ) {
11561186 var statNums = document . querySelectorAll ( '.stat-num[data-target]' ) ;
You can’t perform that action at this time.
0 commit comments