From 174037f0d1c65531298a5a91db1e11c251d49cb8 Mon Sep 17 00:00:00 2001 From: xiu2 <54703944+XIU2@users.noreply.github.com> Date: Tue, 6 Oct 2020 21:34:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20=E6=9C=89=E6=97=B6?= =?UTF-8?q?=E5=80=99=E4=B8=8D=E6=98=BE=E7=A4=BA=20Raw=20[=E4=B8=8B?= =?UTF-8?q?=E8=BD=BD]=20=E9=80=89=E9=A1=B9=E7=9A=84=E9=97=AE=E9=A2=98?= =?UTF-8?q?=EF=BC=8C=E8=B0=83=E6=95=B4=20Raw=20[=E4=B8=8B=E8=BD=BD]=20?= =?UTF-8?q?=E9=80=89=E9=A1=B9=E7=9A=84=E6=96=87=E5=AD=97=E4=B8=BA=E5=9B=BE?= =?UTF-8?q?=E6=A0=87=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- GithubEnhanced-High-Speed-Download.user.js | 25 ++++++++++++++-------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/GithubEnhanced-High-Speed-Download.user.js b/GithubEnhanced-High-Speed-Download.user.js index db51d8b..05f5d88 100644 --- a/GithubEnhanced-High-Speed-Download.user.js +++ b/GithubEnhanced-High-Speed-Download.user.js @@ -1,6 +1,6 @@ // ==UserScript== // @name Github 增强 - 高速下载 -// @version 1.0.9 +// @version 1.1.0 // @author X.I.U // @description 为 Github 的 Clone、Release、Raw、Code(ZIP) 添加高速下载 // @match https://github.com/*/* @@ -29,22 +29,24 @@ var clone_url2 = "https://gitclone.com"; // 中国浙江杭州 var clone_url3 = "https://github.com.cnpmjs.org"; // 新加坡 - var raw_fast = true; // true 下载链接为高速下载链接,false 下载链接为 Github 原生下载链接 + var raw_fast = true; // true 下载链接为高速下载链接(默认),false 下载链接为 Github 原生下载链接 + var raw_url0 = "https://raw.githubusercontent.com"; // Github 原生链接 var raw_url1 = "https://cdn.jsdelivr.net"; // 中国国内CDN var download_zip_svg = ``; var download_clone_svg = `` + var raw_svg = `` var download_release_style = `padding:0 4px;margin-right: -1px;border-radius: 2px;background-color: #ffffff;border-color: rgba(27, 31, 35, 0.1);font-size: 12px;` addRelease(); // Release 加速 addDownloadZIP(); // Source Code 加速 addGitClone(); // Download ZIP/Code(ZIP) 加速 addRawFile(); // Raw 加速 - addDownLink(); // 添加 Raw 下载链接(添加到项目页文件名称后面) + setTimeout(addDownLink, 2000); // 添加 Raw 下载链接(添加到项目页文件名称后面),延迟 2 秒执行,避免被 pjax 刷掉 $(document).on('pjax:success',function(evt){ addRawFile(); // pjax 事件发生后,添加 Raw 加速按钮 及 Raw 下载链接 - addDownLink(); + setTimeout(addDownLink, 2000); // 延迟 2 秒执行,避免被 pjax 刷掉 }); @@ -68,6 +70,8 @@ `; $(this).after(html1); }); + + // Source Code 加速 $(this).find(".d-block.Box-body>a").each(function () { var href = $(this).attr("href"); @@ -144,8 +148,10 @@ // 添加 Raw 下载链接(添加到项目页文件名称后面) function addDownLink(){ // 如果不是项目文件页面,就返回 - var $files = $('.octicon.octicon-file'); - if($files.length === 0) return; + var files = $('.octicon.octicon-file'); + if(files.length === 0) return; + var files1 = $('.fileDownLink'); + if(files1.length > 0) return; // 鼠标指向则显示 var mouseOverHandler = function(evt){ @@ -162,17 +168,18 @@ }; // 循环添加 - $files.each(function(i,fileElm){ + files.each(function(i,fileElm){ var trElm = fileElm.parentNode.parentNode, cntElm = trElm.querySelector('.css-truncate.css-truncate-target.d-block.width-fit a'), + Name = cntElm.innerText, href = cntElm.attributes["href"].nodeValue.replace('https://github.com',''); // 如果 raw_fast 为 true 则下载链接为高速下载链接,反之为 Github 原生下载链接 if (raw_fast){ href = raw_url1 + "/gh" + href.replace('/blob/','@'); }else{ - href = "https://raw.githubusercontent.com" + href.replace('/blob/','/'); + href = raw_url0 + href.replace('/blob/','/'); } - var html1 = ` `; + var html1 = ` `; $(cntElm).after(html1); // 绑定鼠标事件 trElm.onmouseover=mouseOverHandler;