From c12d9ee045b84addeaa87d8d60b82d848d3e9aa8 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Tue, 29 Jun 2021 18:14:52 +0800
Subject: [PATCH 0001/2070] =?UTF-8?q?=E9=80=82=E9=85=8D=20[=E4=B8=8E?=
=?UTF-8?q?=E7=B3=BB=E7=BB=9F=E5=90=8C=E6=AD=A5]=20=E6=97=B6=E7=9A=84?=
=?UTF-8?q?=E6=B7=B1=E8=89=B2=E4=B8=BB=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
GithubEnhanced-High-Speed-Download.user.js | 21 +++++++++++++++------
1 file changed, 15 insertions(+), 6 deletions(-)
diff --git a/GithubEnhanced-High-Speed-Download.user.js b/GithubEnhanced-High-Speed-Download.user.js
index 7487bf8b2..ba808dc3b 100644
--- a/GithubEnhanced-High-Speed-Download.user.js
+++ b/GithubEnhanced-High-Speed-Download.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name Github 增强 - 高速下载
-// @version 1.5.3
+// @version 1.5.4
// @author X.I.U
// @description 高速下载 Git Clone/SSH、Release、Raw、Code(ZIP) 等文件、项目列表单文件快捷下载 (☁)
// @match *://github.com/*
@@ -20,18 +20,27 @@
(function() {
var backColor = '#ffffff';
var fontColor = '#888888';
- if (document.getElementsByTagName('html')[0].getAttribute('data-color-mode') == 'dark') { // 黑暗模式判断
- if (document.getElementsByTagName('html')[0].getAttribute('data-dark-theme') == 'dark_dimmed') {
+ if (document.getElementsByTagName('html')[0].getAttribute('data-color-mode') === 'dark') { // 黑暗模式判断
+ if (document.getElementsByTagName('html')[0].getAttribute('data-dark-theme') === 'dark_dimmed') {
backColor = '#272e37';
fontColor = '#768390';
} else {
backColor = '#161a21';
fontColor = '#b2b8bf';
}
+ } else if (document.getElementsByTagName('html')[0].getAttribute('data-color-mode') === 'auto') {
+ console.log(window.getComputedStyle(document.body).backgroundColor)
+ if (window.getComputedStyle(document.body).backgroundColor === 'rgb(34, 39, 46)') {
+ backColor = '#272e37';
+ fontColor = '#768390';
+ } else if (window.getComputedStyle(document.body).backgroundColor === 'rgb(13, 17, 23)') {
+ backColor = '#161a21';
+ fontColor = '#b2b8bf';
+ }
}
-//['https://gh.66ccff.work', '美国'],
-//['https://github.91chifun.workers.dev', '美国'],
-//['https://github.rc1844.workers.dev', '美国'],
+ //['https://gh.66ccff.work', '美国'],
+ //['https://github.91chifun.workers.dev', '美国'],
+ //['https://github.rc1844.workers.dev', '美国'],
var download_url = [
['https://gh.api.99988866.xyz', '美国'],
['https://gh.msx.workers.dev', '美国'],
From a878f90077a2530cac1e9560e6e7ce8a7e41efb3 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 1 Jul 2021 14:29:13 +0800
Subject: [PATCH 0002/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20[=E8=87=AA?=
=?UTF-8?q?=E5=8A=A8=E7=AD=BE=E5=88=B0=EF=BC=88=E8=AE=BF=E9=97=AE=E7=A9=BA?=
=?UTF-8?q?=E9=97=B4=EF=BC=89]=20=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Hostloc-Enhanced.user.js | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index 0f89b1486..f65a00bc8 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 全球主机交流论坛增强
-// @version 1.2.5
+// @version 1.2.6
// @author X.I.U
// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
// @match *://hostloc.com/*
@@ -187,17 +187,18 @@
// 自动签到(访问空间 10 次 = 20 积分)
function autoSignIn() {
if (!loginStatus) return
- if (GM_getValue('menu_signingIn')) return
+ //if (GM_getValue('menu_signingIn')) return
let timeNow = new Date().getFullYear() + "/" + (new Date().getMonth() + 1) + "/" + new Date().getDate(),
timeOld = GM_getValue('menu_signInTime');
if (!timeOld || timeOld != timeNow) { // 是新的一天
+ GM_setValue('menu_signInTime', timeNow); // 写入签到时间以供后续比较
GM_notification({text: '请不要关闭/刷新本页!耐心等待 60 秒~\n在此期间可以在 "其他标签页" 浏览论坛!', timeout: 10000});
let url_list = [],
url = 0;
// 随机生成 12 个空间地址(2 个冗余)
for(let i = 0;i < 12;i++){url_list[i] = "https://" + location.host + "/space-uid-" + Math.floor(Math.random()*(50000-10000+1)+10000) + ".html";}
// 每 5 秒访问一次(避免触发网站防御机制)
- GM_setValue('menu_signingIn', true);
+ //GM_setValue('menu_signingIn', true);
let signIn = setInterval(function(){
GM_xmlhttpRequest({
url: url_list[url++],
@@ -206,11 +207,11 @@
});
console.log(`[全球主机交流论坛 增强] 金钱 +2 (${url_list[url]})`);
if (url === 11) { // 次数够了就取消定时循环
+ clearInterval(signIn);
+ //GM_setValue('menu_signingIn', false);
+ //GM_setValue('menu_signInTime', timeNow); // 写入签到时间以供后续比较
console.log('[全球主机交流论坛 增强] 签到完成!');
GM_notification({text: '签到完成!金钱 +20 ~', timeout: 3500});
- GM_setValue('menu_signingIn', false);
- GM_setValue('menu_signInTime', timeNow); // 写入签到时间以供后续比较
- clearInterval(signIn);
}
}, 5000);
}/* else { // 新旧签到时间一致
@@ -221,7 +222,7 @@
// 重新签到
function reAutoSignIn() {
- GM_setValue('menu_signingIn', false);
+ //GM_setValue('menu_signingIn', false);
GM_setValue('menu_signInTime', '1970/1/1');
location.reload(); // 刷新网页
}
From f203a1a30c805f283b5661368ebd93db12840c0a Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 2 Jul 2021 23:01:32 +0800
Subject: [PATCH 0003/2070] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20=E5=9C=A8=20fast?=
=?UTF-8?q?git=20=E9=95=9C=E5=83=8F=E7=AB=99=E6=97=B6=E8=84=9A=E6=9C=AC?=
=?UTF-8?q?=E5=8A=A0=E9=80=9F=E6=BA=90=20URL=20=E6=9C=89=E8=AF=AF=E7=9A=84?=
=?UTF-8?q?=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
GithubEnhanced-High-Speed-Download.user.js | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/GithubEnhanced-High-Speed-Download.user.js b/GithubEnhanced-High-Speed-Download.user.js
index ba808dc3b..280825532 100644
--- a/GithubEnhanced-High-Speed-Download.user.js
+++ b/GithubEnhanced-High-Speed-Download.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name Github 增强 - 高速下载
-// @version 1.5.4
+// @version 1.5.5
// @author X.I.U
// @description 高速下载 Git Clone/SSH、Release、Raw、Code(ZIP) 等文件、项目列表单文件快捷下载 (☁)
// @match *://github.com/*
@@ -143,7 +143,7 @@
}
Array.from(html).forEach(function (current) {
current.querySelectorAll('.d-flex.Box-body > a').forEach(function (_this) {
- let href = _this.href.split('github.com'),
+ let href = _this.href.split(location.host),
url = [],
_html = `
`;
@@ -153,6 +153,7 @@
} else {
url[i] = download_url[i][0] + '/' + _this.href
}
+ if (location.host === 'hub.fastgit.org') url[i] = url[i].replace('hub.fastgit.org','github.com')
}
for (let i=0;i
a').forEach(function (_this) {
- let href = _this.href.split('github.com'),
+ let href = _this.href.split(location.host),
url = [],
_html = ``;
@@ -177,6 +178,7 @@
} else {
url[i] = download_url[i][0] + '/' + _this.href
}
+ if (location.host === 'hub.fastgit.org') url[i] = url[i].replace('hub.fastgit.org','github.com')
}
for (let i=0;i
Date: Wed, 7 Jul 2021 21:33:04 +0800
Subject: [PATCH 0004/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=B1=8F?=
=?UTF-8?q?=E8=94=BD=E7=94=A8=E6=88=B7=EF=BC=88=E9=BB=91=E5=90=8D=E5=8D=95?=
=?UTF-8?q?=EF=BC=89]=20=E6=94=AF=E6=8C=81=E9=A2=84=E8=A7=88=E5=B8=96?=
=?UTF-8?q?=E5=AD=90=E4=B8=AD=E7=9A=84=E5=9B=9E=E5=A4=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Hostloc-Enhanced.user.js | 26 +++++++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index f65a00bc8..1bac3f6b1 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 全球主机交流论坛增强
-// @version 1.2.6
+// @version 1.2.7
// @author X.I.U
// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
// @match *://hostloc.com/*
@@ -99,7 +99,7 @@
thread: {
SiteTypeID: 2,
pager: {
- nextLink: '//div[@id="pgt"]//a[contains(text(),"下一页")][@href]',
+ nextLink: '//a[@class="nxt"][@href]',
pageElement: 'css;div#postlist > div[id^="post_"]',
HT_insert: ['css;div#postlist', 2],
replaceE: 'css;div.pg',
@@ -108,7 +108,7 @@
guide: {
SiteTypeID: 3,
pager: {
- nextLink: '//div[@id="pgt"]//a[contains(text(),"下一页")][@href]',
+ nextLink: '//a[@class="nxt"][@href]',
pageElement: 'css;div#threadlist div.bm_c table > tbody[id^="normalthread_"]',
HT_insert: ['css;div#threadlist div.bm_c table', 2],
replaceE: 'css;div.pg',
@@ -254,6 +254,7 @@
break;
case 'forum': // 各版块帖子列表
blockUsers_('[id^="normalthread_"]', 'a[href^="space-uid"]');
+ blockUsers_vfastpost(); // 预览帖子中的回复
break;
case 'search': // 搜索结果
blockUsers_('.pbw', 'a[href^="space-uid"]');
@@ -279,6 +280,25 @@
})
})
}
+
+ function blockUsers_vfastpost() {
+ let vfastpost = e => {
+ if (e.target.innerHTML && e.target.innerHTML.indexOf('id="vfastpost"') > -1) {
+ let listItem = e.target.querySelectorAll('[id^="post_"]');
+ if (listItem.length < 1) return
+ listItem.forEach(function(item){ // 遍历所有回复
+ menu_value('menu_customBlockUsers').forEach(function(item1){ // 遍历用户黑名单
+ let itemName = item.querySelector('a.xi2'); // 寻找用户名
+ if (itemName && itemName.innerText === item1) {
+ console.log(`屏蔽用户:${item1}`);
+ item.remove(); // 删除回复
+ }
+ })
+ })
+ }
+ }
+ document.addEventListener('DOMNodeInserted', vfastpost); // 监听插入事件
+ }
}
From 4eeed976cab6d6d5c98d611f0c3b03a79b0c3623 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 8 Jul 2021 22:09:02 +0800
Subject: [PATCH 0005/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Zhihu-Beautification.user.js | 21 ++++++++++++++++-----
1 file changed, 16 insertions(+), 5 deletions(-)
diff --git a/Zhihu-Beautification.user.js b/Zhihu-Beautification.user.js
index 2c87cf87b..f044538a4 100644
--- a/Zhihu-Beautification.user.js
+++ b/Zhihu-Beautification.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 知乎美化
-// @version 1.2.4
+// @version 1.2.5
// @author X.I.U
// @description 宽屏显示、暗黑模式(4种)、隐藏文章开头大图、调整图片最大高度、向下翻时自动隐藏顶栏、文章编辑页面与实际文章宽度一致、屏蔽登录提示
// @match *://www.zhihu.com/*
@@ -281,13 +281,13 @@ html {filter: brightness(75%) sepia(30%) !important; background-image: url();}
if (menu_value('menu_darkModeType') === 1) {
if (getTheme() === 'light') {
document.cookie="theme=dark; expires=Thu, 18 Dec 2031 12:00:00 GMT; path=/";
- document.getElementsByTagName('html')[0].setAttribute('data-theme', 'dark');
+ document.lastChild.setAttribute('data-theme', 'dark');
location.reload(); // 刷新网页
}
} else {
if (getTheme() === 'dark') {
document.cookie="theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";
- document.getElementsByTagName('html')[0].setAttribute('data-theme', 'light');
+ document.lastChild.setAttribute('data-theme', 'light');
location.reload(); // 刷新网页
}
if (navigator.userAgent.toLowerCase().indexOf('firefox') > -1) {
@@ -313,7 +313,7 @@ html {filter: brightness(75%) sepia(30%) !important; background-image: url();}
} else {
if (getTheme() === 'dark'){
document.cookie="theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";
- document.getElementsByTagName('html')[0].setAttribute('data-theme', 'light');
+ document.lastChild.setAttribute('data-theme', 'light');
location.reload(); // 刷新网页
}
}
@@ -345,7 +345,7 @@ html {filter: brightness(75%) sepia(30%) !important; background-image: url();}
}
}
- style_Add.innerHTML = style;
+ /*style_Add.innerHTML = style;
if (document.head) {
document.head.appendChild(style_Add);
} else {
@@ -355,6 +355,17 @@ html {filter: brightness(75%) sepia(30%) !important; background-image: url();}
clearInterval(timer);
}
}, 1);
+ }*/
+
+ if (document.lastChild) {
+ document.lastChild.appendChild(style_Add).textContent = style;
+ } else { // 避免网站加载速度太慢的备用措施
+ let timer1 = setInterval(function(){ // 每 5 毫秒检查一下 html 是否已存在
+ if (document.lastChild) {
+ clearInterval(timer1); // 取消定时器
+ document.lastChild.appendChild(style_Add).textContent = style;
+ }
+ }, 5);
}
}
function getTheme() {
From 10c35bc4610ce2eb093120d67666aa1e1c0a07fb Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 8 Jul 2021 23:22:09 +0800
Subject: [PATCH 0006/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DarkMode.user.js | 19 +++++++++++++++----
1 file changed, 15 insertions(+), 4 deletions(-)
diff --git a/DarkMode.user.js b/DarkMode.user.js
index bb4279e31..8f6a3bad0 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 护眼模式
-// @version 1.1.2
+// @version 1.1.3
// @author X.I.U
// @description 简单有效的全网通用护眼模式、夜间模式、暗黑模式
// @match *://*/*
@@ -26,7 +26,7 @@
['menu_runDuringTheDay', '白天保持开启 (比晚上亮一点点)', '白天保持开启', true],
['menu_autoRecognition', '排除自带暗黑模式的网页 (beta)', '排除自带暗黑模式的网页 (beta)', true],
['menu_darkModeType', '点击切换模式', '点击切换模式', 1]
- ], menu_ID = [], websiteList = ['rarbgprx.org','fitgirl-repacks.site','masquerade.site'];
+ ], menu_ID = [], websiteList = ['rarbgprx.org','fitgirl-repacks.site','masquerade.site','www.gamersky.com'];
for (let i=0;i -1) {
@@ -141,6 +141,7 @@
break;
}
style_Add.id = 'XIU2DarkMode';
+ style_Add.type = 'text/css';
//console.log(document,document.lastChild,document.querySelector('html'))
if (document.lastChild) {
document.lastChild.appendChild(style_Add).textContent = style;
@@ -212,6 +213,16 @@
}
}
}, 3000);*/
+
+ // 解决远景论坛会清理掉前面插入的 CSS 样式的问题
+ if (location.hostname === 'bbs.pcbeta.com') {
+ let timer1 = setInterval(function(){
+ if (!document.getElementById('XIU2DarkMode')) {
+ document.lastChild.appendChild(style_Add).textContent = style;
+ clearInterval(timer1);
+ }
+ }, 10);
+ }
}
// 获取背景颜色值
From 805657555234e8f3ce710f5b1ba7b0e75a83dbbb Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 10 Jul 2021 01:17:29 +0800
Subject: [PATCH 0007/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=9B=9E?=
=?UTF-8?q?=E5=B8=96=E5=B0=8F=E5=B0=BE=E5=B7=B4]=20=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Hostloc-Enhanced.user.js | 66 +++++++++++++++++++++++++++++++++++++---
1 file changed, 62 insertions(+), 4 deletions(-)
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index 1bac3f6b1..841ef4ba7 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 全球主机交流论坛增强
-// @version 1.2.7
+// @version 1.2.8
// @author X.I.U
-// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
+// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、回帖小尾巴、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
// @match *://hostloc.com/*
// @match *://91ai.net/*
// @icon https://www.hostloc.com/favicon.ico
@@ -26,6 +26,7 @@
['menu_customBlockUsers', '自定义屏蔽用户', '自定义屏蔽用户', []],
['menu_blockKeywords', '屏蔽关键词(帖子标题)', '屏蔽关键词(帖子标题)', false],
['menu_customBlockKeywords', '自定义屏蔽关键词', '自定义屏蔽关键词', []],
+ ['menu_customLittleTail', '自定义小尾巴内容', '自定义小尾巴内容', []],
['menu_pageLoading', '自动无缝翻页(总开关)', '自动无缝翻页', true],
['menu_thread_pageLoading', '帖子内自动翻页', '帖子内自动翻页', true],
['menu_backToTop', '快捷回到顶部(右键点击两侧空白处)', '快捷回到顶部', true],
@@ -54,6 +55,8 @@
menu_ID[i] = GM_registerMenuCommand(`[ ⚑ ] ${menu_ALL[i][1]}`, function(){customBlockUsers()});
} else if (menu_ALL[i][0] === 'menu_customBlockKeywords') {
menu_ID[i] = GM_registerMenuCommand(`[ ⚑ ] ${menu_ALL[i][1]}`, function(){customBlockKeywords()});
+ } else if (menu_ALL[i][0] === 'menu_customLittleTail') {
+ menu_ID[i] = GM_registerMenuCommand(`[ ⚑ ] ${menu_ALL[i][1]}`, function(){customLittleTail()});
} else {
menu_ID[i] = GM_registerMenuCommand(`[ ${menu_ALL[i][3]?'√':'×'} ] ${menu_ALL[i][1]}`, function(){menu_switch(`${menu_ALL[i][3]}`,`${menu_ALL[i][0]}`,`${menu_ALL[i][2]}`)});
}
@@ -156,6 +159,7 @@
showPosts(); // 自动显示帖子内被隐藏的回复
blockUsers('thread'); // 屏蔽用户(黑名单)
if (menu_value('menu_onlineStatus')) onlineStatus(); // 显示是否在线
+ littleTail('thread'); // 小尾巴
} else if (patt_forum.test(location.pathname) || location.search.indexOf('mod=forumdisplay') > -1) { // 各板块帖子列表
curSite = DBSite.forum;
if (menu_value('menu_collapsedNowPost')) collapsedNowPost(); // 收起当前帖子预览(左键左右两侧空白处)
@@ -163,6 +167,7 @@
blockUsers('forum'); // 屏蔽用户(黑名单)
blockKeywords(); // 屏蔽关键词(帖子标题)
vfastpostDOMNodeInserted(); // 监听插入事件(预览快速回复带签名)
+ littleTail('forum'); // 小尾巴
if (patt_forum.test(location.pathname)) blockDOMNodeInserted(); //监听插入事件(有新的回复主题,点击查看)
}else if (patt_guide.test(location.search)) { // 导读帖子列表
curSite = DBSite.guide;
@@ -171,10 +176,12 @@
blockUsers('search'); // 屏蔽用户(黑名单)
} else if(location.pathname === '/home.php' && location.search.indexOf('mod=space&do=notice&view=mypost') > -1) { // 消息(帖子/点评/提到)
blockUsers('notice'); // 屏蔽用户(黑名单)
- } else if(location.pathname === '/home.php' && location.search === '?mod=space&do=pm') { // 消息(私人聊天)
+ } else if(location.pathname === '/home.php' && location.search.indexOf('mod=space&do=pm') > -1) { // 消息(私人聊天)
blockUsers('pm'); // 屏蔽用户(黑名单)
- } else if(location.pathname === '/forum.php' && location.search === '?mod=guide&view=my&type=reply') { // 我的帖子:回复
+ } else if(location.pathname === '/forum.php' && location.search.indexOf('mod=guide&view=my&type=reply') > -1) { // 我的帖子:回复
curSite = DBSite.myreply;
+ } else if(location.pathname === '/forum.php' && location.search.indexOf('mod=post&action=reply') > -1) { // 回复:高级回复
+ littleTail('reply'); // 小尾巴
}
curSite.pageUrl = ""; // 下一页URL
@@ -360,6 +367,57 @@
}
+ // 自定义小尾巴内容
+ function customLittleTail() {
+ let newLittleTail = prompt('编辑 [自定义小尾巴内容],刷新网页后生效\n(换行请使用 \\n 例如:我是第一行~\\n我是第二行~', GM_getValue('menu_customLittleTail'));
+ if (newLittleTail === '') {
+ GM_setValue('menu_customLittleTail', []);
+ registerMenuCommand(); // 重新注册脚本菜单
+ } else if (newLittleTail != null) {
+ GM_setValue('menu_customLittleTail', newLittleTail);
+ registerMenuCommand(); // 重新注册脚本菜单
+ }
+ };
+
+
+ // 小尾巴
+ function littleTail(type) {
+ if (!menu_value('menu_customLittleTail')) return
+ switch(type) {
+ case 'forum': // 各版块帖子列表的预览帖子
+ littleTail_1();
+ break;
+ case 'thread': // 帖子内
+ littleTail_1();
+ littleTail_2();
+ break;
+ case 'reply': // 高级回复
+ littleTail_3();
+ break;
+ }
+
+ function littleTail_1() {
+ let floatlayout_reply = e => {
+ if (e.target.innerHTML && e.target.innerHTML.indexOf('id="floatlayout_reply"') > -1) {
+ document.getElementById('postsubmit').onclick = function(){document.getElementById('postmessage').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
+ }
+ }
+ document.addEventListener('DOMNodeInserted', floatlayout_reply); // 监听插入事件
+ }
+
+ function littleTail_2() { // 帖子底部的回复框
+ document.getElementById('fastpostsubmit').onclick = function(){document.getElementById('fastpostmessage').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
+ }
+
+ function littleTail_3() {
+ let postsubmit = document.getElementById('postsubmit');
+ if (postsubmit && postsubmit.innerText === '\n参与/回复主题\n') {
+ postsubmit.onclick = function(){document.getElementById('e_textarea').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
+ }
+ }
+ }
+
+
// 监听插入事件(回帖间隔)
/*function replyIntervalDOMNodeInserted() {
let replyInterval = e => {
From 05057585689173c9b88140d566ac25496c1061d6 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 10 Jul 2021 01:25:11 +0800
Subject: [PATCH 0008/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=9B=9E?=
=?UTF-8?q?=E5=B8=96=E5=B0=8F=E5=B0=BE=E5=B7=B4]=20=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Hostloc-Enhanced.user.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index 841ef4ba7..6bf07a489 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -180,7 +180,7 @@
blockUsers('pm'); // 屏蔽用户(黑名单)
} else if(location.pathname === '/forum.php' && location.search.indexOf('mod=guide&view=my&type=reply') > -1) { // 我的帖子:回复
curSite = DBSite.myreply;
- } else if(location.pathname === '/forum.php' && location.search.indexOf('mod=post&action=reply') > -1) { // 回复:高级回复
+ } else if(location.pathname === '/forum.php' && location.search.indexOf('mod=post&action=reply') > -1 || location.pathname === '/forum.php' && location.search.indexOf('mod=post&action=newthread') > -1) { // 回复:高级回复
littleTail('reply'); // 小尾巴
}
@@ -411,7 +411,7 @@
function littleTail_3() {
let postsubmit = document.getElementById('postsubmit');
- if (postsubmit && postsubmit.innerText === '\n参与/回复主题\n') {
+ if (postsubmit && postsubmit.innerText === '\n参与/回复主题\n' || postsubmit && postsubmit.innerText === '\n发表帖子\n') {
postsubmit.onclick = function(){document.getElementById('e_textarea').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
}
}
From 9d68b6576c42108cb93370c1a013f399d678a9cb Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 10 Jul 2021 10:00:56 +0800
Subject: [PATCH 0009/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=9B=9E?=
=?UTF-8?q?=E5=B8=96=E5=B0=8F=E5=B0=BE=E5=B7=B4]=20=E6=94=AF=E6=8C=81?=
=?UTF-8?q?=E9=A2=84=E8=A7=88=E5=B8=96=E5=AD=90=E5=BA=95=E9=83=A8=E7=9A=84?=
=?UTF-8?q?=E5=BF=AB=E9=80=9F=E5=9B=9E=E5=A4=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Hostloc-Enhanced.user.js | 22 +++++++++++++++++-----
1 file changed, 17 insertions(+), 5 deletions(-)
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index 6bf07a489..d3d9cf03c 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 全球主机交流论坛增强
-// @version 1.2.8
+// @version 1.2.9
// @author X.I.U
// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、回帖小尾巴、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
// @match *://hostloc.com/*
@@ -369,7 +369,7 @@
// 自定义小尾巴内容
function customLittleTail() {
- let newLittleTail = prompt('编辑 [自定义小尾巴内容],刷新网页后生效\n(换行请使用 \\n 例如:我是第一行~\\n我是第二行~', GM_getValue('menu_customLittleTail'));
+ let newLittleTail = prompt('编辑 [自定义小尾巴内容],刷新网页后生效(换行请使用 \\n\n提示①:记得在小尾巴前面加上几个 \\n 换行,用来分隔开回帖内容~\n提示②:建议使用 [align=right] 标签来使小尾巴居右~\n提示③:支持论坛富文本标签(建议先找个回复编辑预览好~\n示例:\\n\\n\\n\\n[align=right]第一行内容~\\n第二行内容~[/align]', GM_getValue('menu_customLittleTail'));
if (newLittleTail === '') {
GM_setValue('menu_customLittleTail', []);
registerMenuCommand(); // 重新注册脚本菜单
@@ -385,17 +385,29 @@
if (!menu_value('menu_customLittleTail')) return
switch(type) {
case 'forum': // 各版块帖子列表的预览帖子
- littleTail_1();
+ littleTail_0(); // 预览帖子 快速回复(底部)
+ littleTail_1(); // 预览帖子 回复(悬浮)
break;
case 'thread': // 帖子内
- littleTail_1();
- littleTail_2();
+ littleTail_1(); // 快速回复(悬浮)
+ littleTail_2(); // 回复框(底部)
break;
case 'reply': // 高级回复
littleTail_3();
break;
}
+ function littleTail_0() {
+ let vfastpost = e => {
+ if (e.target.innerHTML && e.target.innerHTML.indexOf('id="vfastpost"') > -1) {
+ let message = e.target.querySelector('input[name="message"]'), id = message.id.match(/\d+/g)[0];
+ message.parentNode.innerHTML = ``
+ document.getElementById(`vreplysubmit_${id}`).onclick = function(){document.getElementById(`vmessage_${id}`).value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
+ }
+ }
+ document.addEventListener('DOMNodeInserted', vfastpost); // 监听插入事件
+ }
+
function littleTail_1() {
let floatlayout_reply = e => {
if (e.target.innerHTML && e.target.innerHTML.indexOf('id="floatlayout_reply"') > -1) {
From 660d7b2fc65d031d8f83c6778f097a4a4fbeca20 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sun, 11 Jul 2021 13:41:39 +0800
Subject: [PATCH 0010/2070] README.md
---
README.md | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/README.md b/README.md
index 2eabc4b0f..a7163ce06 100644
--- a/README.md
+++ b/README.md
@@ -17,9 +17,9 @@
| | 脚本名称 | 脚本功能 | 安装 \| 备用 |
| :----: | :---- | :---- | :----: |
-| [
](https://github.com/XIU2) | **护眼模式** | 简单有效的全网通用护眼模式、夜间模式、暗黑模式 | **[安装](https://greasyfork.org/zh-CN/scripts/426377)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/DarkMode.user.js)** |
+| [
](https://github.com/XIU2) | **护眼模式** | 简单有效的全网通用护眼模式、夜间模式、暗黑模式~ | **[安装](https://greasyfork.org/zh-CN/scripts/426377)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/DarkMode.user.js)** |
| [
](https://www.zhihu.com/people/xiu2) | **知乎 美化** | 宽屏显示、**暗黑模式**、隐藏文章开头大图、调整图片最大高... | **[安装](https://greasyfork.org/zh-CN/scripts/412212)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhihu-Beautification.user.js)** |
-| [
](https://www.zhihu.com/people/xiu2) | **知乎 增强** | **移除登录弹窗**、一键收起回答、屏蔽指定用户、屏蔽盐选内... | **[安装](https://greasyfork.org/zh-CN/scripts/419081)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhihu-Enhanced.user.js)** |
+| [
](https://www.zhihu.com/people/xiu2) | **知乎 增强** | **移除登录弹窗**、一键收起回答、屏蔽用户、屏蔽关键词(标题)... | **[安装](https://greasyfork.org/zh-CN/scripts/419081)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhihu-Enhanced.user.js)** |
| [
](https://www.v2ex.com/) | **V2ex 增强** | **自动签到**、链接转图片、自动无缝翻页、新标签页打开链接... | **[安装](https://greasyfork.org/zh-CN/scripts/424246)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/V2ex-Enhanced.user.js)** |
| [
](https://github.com/XIU2) | **Github 增强** | **高速下载** Git Clone/SSH、Release、Raw、Code(ZIP) 文件... | **[安装](https://greasyfork.org/zh-CN/scripts/412245)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/GithubEnhanced-High-Speed-Download.user.js)** |
| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | 423Down、Apphot、不死鸟、小众软件、异次元软件... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
@@ -27,11 +27,11 @@
| [
](https://bbs.3dmgame.com) | **3DM论坛 增强** | **自动回复**、自动无缝翻页、清理置顶帖子、自动滚动至隐藏... | **[安装](https://greasyfork.org/zh-CN/scripts/412890)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Enhanced.user.js)** |
| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 美化** | 精简多余内容、样式优化、宽屏显示 | **[安装](https://greasyfork.org/zh-CN/scripts/412361)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Beautification.user.js)** |
| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 增强** | 自动签到、**自动回复**、自动无缝翻页、快捷回到顶部、附件... | **[安装](https://greasyfork.org/zh-CN/scripts/412362)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Enhanced.user.js)** |
-| [
](https://www.lanzou.com) | **蓝奏云网盘 增强 \*** | 刷新不回根目录、后退返回上一级、**右键显示菜单**、自动显... | **[安装](https://greasyfork.org/zh-CN/scripts/419224)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Lanzou-Enhanced.user.js)** |
+| [
](https://www.lanzou.com) | **蓝奏云网盘 增强 \*** | 刷新不回根目录、**右键显示菜单**、自动显示更多文件、自动... | **[安装](https://greasyfork.org/zh-CN/scripts/419224)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Lanzou-Enhanced.user.js)** |
| [
](https://translate.google.cn) | ~~_**Google 翻译 美化**_~~ | ~~_精简多余内容、修复翻译结果溢出屏幕问题_~~ | ~~_**[安装](https://zhuanlan.zhihu.com/p/286815739)** \| **[备用](https://zhuanlan.zhihu.com/p/286815739)**_~~ |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/412681)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Beautification.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 增强** | **自动签到**、自动无缝翻页、屏蔽导读悬赏贴 (最新发表页)... | **[安装](https://greasyfork.org/zh-CN/scripts/412680)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Enhanced.user.js)** |
-| [
](https://hostloc.com) | **全球主机交流论坛 增强 \*** | **自动签到 (访问空间)、屏蔽指定用户**、自动无缝翻页等... | **[安装](https://greasyfork.org/zh-CN/scripts/414005)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Hostloc-Enhanced.user.js)** |
+| [
](https://hostloc.com) | **全球主机交流论坛 增强 \*** | **自动访问空间、屏蔽用户**、屏蔽关键词、自动无缝翻页等... | **[安装](https://greasyfork.org/zh-CN/scripts/414005)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Hostloc-Enhanced.user.js)** |
| [
](https://store.steampowered.com) | **Steam 创意工坊大图 修复** | 修复 Steam 创意工坊预览大图无法显示的问题 | **[安装](https://greasyfork.org/zh-CN/scripts/397666)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/SteamWorkshopImageRepair.user.js)** |
> _脚本名称末尾 **`*`** 代表该脚本为**网友主动提出需求**而写的。如果你也有需求,可以[告诉我](https://github.com/XIU2/UserScript/issues/new/choose)!_
From 9ca2977d15b1bb0002f4375e3652e6a3f90c25e0 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 15 Jul 2021 09:09:45 +0800
Subject: [PATCH 0011/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E8=87=AA?=
=?UTF-8?q?=E5=AE=9A=E4=B9=89=E6=A8=A1=E5=BC=8F=E9=A2=9C=E8=89=B2]?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DarkMode.user.js | 66 +++++++++++++++++++++++++++++++++++++++---------
1 file changed, 54 insertions(+), 12 deletions(-)
diff --git a/DarkMode.user.js b/DarkMode.user.js
index 8f6a3bad0..3f63a4baa 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 护眼模式
-// @version 1.1.3
+// @version 1.1.4
// @author X.I.U
// @description 简单有效的全网通用护眼模式、夜间模式、暗黑模式
// @match *://*/*
@@ -25,7 +25,10 @@
var menu_ALL = [
['menu_runDuringTheDay', '白天保持开启 (比晚上亮一点点)', '白天保持开启', true],
['menu_autoRecognition', '排除自带暗黑模式的网页 (beta)', '排除自带暗黑模式的网页 (beta)', true],
- ['menu_darkModeType', '点击切换模式', '点击切换模式', 1]
+ ['menu_darkModeType', '点击切换模式', '点击切换模式', 1],
+ ['menu_customMode1', '自定义模式 1', '自定义模式 1', '80|70'],
+ ['menu_customMode2', '自定义模式 2', '自定义模式 2', '80|20|70|30'],
+ ['menu_customMode3', '自定义模式 3', '自定义模式 3', '80']
], menu_ID = [], websiteList = ['rarbgprx.org','fitgirl-repacks.site','masquerade.site','www.gamersky.com'];
for (let i=0;i -1) {
From a9cccc58b6098c1918ea6860bfb5951c64cde8ee Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 15 Jul 2021 16:32:02 +0800
Subject: [PATCH 0012/2070] =?UTF-8?q?=E5=90=88=E5=B9=B6=203=E4=B8=AA=20[?=
=?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E6=A8=A1=E5=BC=8F]=20=E4=B8=BA=20[?=
=?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E5=BD=93=E5=89=8D=E6=A8=A1=E5=BC=8F?=
=?UTF-8?q?]=20=E5=8A=9F=E8=83=BD;=20=E4=BC=98=E5=8C=96=20[=E8=87=AA?=
=?UTF-8?q?=E5=AE=9A=E4=B9=89=E5=BD=93=E5=89=8D=E6=A8=A1=E5=BC=8F]=20?=
=?UTF-8?q?=E5=90=8E=E7=AB=8B=E5=8D=B3=E7=94=9F=E6=95=88~?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DarkMode.user.js | 51 +++++++++++++++++++++++++++---------------------
1 file changed, 29 insertions(+), 22 deletions(-)
diff --git a/DarkMode.user.js b/DarkMode.user.js
index 3f63a4baa..8d80d555a 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 护眼模式
-// @version 1.1.4
+// @version 1.1.5
// @author X.I.U
// @description 简单有效的全网通用护眼模式、夜间模式、暗黑模式
// @match *://*/*
@@ -26,6 +26,7 @@
['menu_runDuringTheDay', '白天保持开启 (比晚上亮一点点)', '白天保持开启', true],
['menu_autoRecognition', '排除自带暗黑模式的网页 (beta)', '排除自带暗黑模式的网页 (beta)', true],
['menu_darkModeType', '点击切换模式', '点击切换模式', 1],
+ ['menu_customMode', '自定义当前模式', '自定义当前模式', '80|70'],
['menu_customMode1', '自定义模式 1', '自定义模式 1', '80|70'],
['menu_customMode2', '自定义模式 2', '自定义模式 2', '80|20|70|30'],
['menu_customMode3', '自定义模式 3', '自定义模式 3', '80']
@@ -52,15 +53,15 @@
GM_setValue('menu_darkModeType', menu_ALL[i][3]);
}
menu_ID[i] = GM_registerMenuCommand(`🔄 [ ${menu_ALL[i][3]} ] ${menu_ALL[i][1]}`, function(){menu_toggle(`${menu_ALL[i][3]}`,`${menu_ALL[i][0]}`)});
+ } else if (menu_ALL[i][0] === 'menu_customMode') {
+ GM_setValue('menu_customMode', menu_ALL[i][3]);
+ menu_ID[i] = GM_registerMenuCommand(`✅ ${menu_ALL[i][1]}`, function(){menu_customMode()});
} else if (menu_ALL[i][0] === 'menu_customMode1') {
GM_setValue('menu_customMode1', menu_ALL[i][3]);
- menu_ID[i] = GM_registerMenuCommand(`1️⃣ ${menu_ALL[i][1]}`, function(){menu_customMode(`${menu_ALL[i][3]}`,`${menu_ALL[i][0]}`)});
} else if (menu_ALL[i][0] === 'menu_customMode2') {
GM_setValue('menu_customMode2', menu_ALL[i][3]);
- menu_ID[i] = GM_registerMenuCommand(`2️⃣ ${menu_ALL[i][1]}`, function(){menu_customMode(`${menu_ALL[i][3]}`,`${menu_ALL[i][0]}`)});
} else if (menu_ALL[i][0] === 'menu_customMode3') {
GM_setValue('menu_customMode3', menu_ALL[i][3]);
- menu_ID[i] = GM_registerMenuCommand(`3️⃣ ${menu_ALL[i][1]}`, function(){menu_customMode(`${menu_ALL[i][3]}`,`${menu_ALL[i][0]}`)});
} else {
menu_ID[i] = GM_registerMenuCommand(`🌝 [ ${menu_ALL[i][3]?'√':'×'} ] ${menu_ALL[i][1]}`, function(){menu_switch(`${menu_ALL[i][3]}`,`${menu_ALL[i][0]}`,`${menu_ALL[i][2]}`)});
}
@@ -69,30 +70,36 @@
}
- function menu_customMode(menu_status, Name) {
- let newMods, tip, defaults;
- switch(Name) {
- case 'menu_customMode1':
- tip = '自定义 [模式 1],刷新网页后生效~\n格式:亮度 (白天)|亮度 (晚上)\n默认:80|70(均为百分比 1~100,不需要 % 符号)'
- defaults = '80|70'
+ // 自定义当前模式
+ function menu_customMode() {
+ let newMods, tip, defaults, name;
+ switch(menu_value('menu_darkModeType')) {
+ case 1:
+ tip = '自定义 [模式 1],修改后立即生效~\n格式:亮度 (白天)|亮度 (晚上)\n默认:80|70(均为百分比 1~100,不需要 % 符号)';
+ defaults = '80|70';
+ name = 'menu_customMode1';
break;
- case 'menu_customMode2':
- tip = '自定义 [模式 2],刷新网页后生效~\n格式:亮度 (白天)|暖色 (白天)|亮度 (晚上)|暖色 (晚上)\n默认:80|20|70|30(均为百分比 1~100,不需要 % 符号)'
- defaults = '80|20|70|30'
+ case 2:
+ tip = '自定义 [模式 2],修改后立即生效~\n格式:亮度 (白天)|暖色 (白天)|亮度 (晚上)|暖色 (晚上)\n默认:80|20|70|30(均为百分比 1~100,不需要 % 符号)';
+ defaults = '80|20|70|30';
+ name = 'menu_customMode2';
break;
- case 'menu_customMode3':
- tip = '自定义 [模式 3],刷新网页后生效~\n格式:反色\n默认:80(均为百分比 50~100,不需要 % 符号)'
- defaults = '80'
+ case 3:
+ tip = '自定义 [模式 3],修改后立即生效~\n格式:反色\n默认:80(均为百分比 50~100,不需要 % 符号)';
+ defaults = '80';
+ name = 'menu_customMode3';
break;
}
- newMods = prompt(tip, GM_getValue(`${Name}`));
+ newMods = prompt(tip, GM_getValue(`${name}`));
if (newMods === '') {
- GM_setValue(`${Name}`, defaults);
+ GM_setValue(`${name}`, defaults);
registerMenuCommand(); // 重新注册脚本菜单
} else if (newMods != null) {
- GM_setValue(`${Name}`, newMods);
+ GM_setValue(`${name}`, newMods);
registerMenuCommand(); // 重新注册脚本菜单
}
+ document.getElementById('XIU2DarkMode').remove(); // 即时修改样式
+ addStyle();
}
@@ -136,9 +143,9 @@
function addStyle() {
let remove = false, style_Add = document.createElement('style'),
hours = new Date().getHours(),
- style_10 = GM_getValue('menu_customMode1').split('|'),
- style_20 = GM_getValue('menu_customMode2').split('|'),
- style_30 = GM_getValue('menu_customMode3').split('|'),
+ style_10 = menu_value('menu_customMode1').split('|'),
+ style_20 = menu_value('menu_customMode2').split('|'),
+ style_30 = menu_value('menu_customMode3').split('|'),
style = ``,
style_00 = `html, body {background-color: #ffffff;}`,
style_11 = `html {filter: brightness(${style_10[0]}%) !important;}`,
From 34961430e2e166f5670a060999a9a2413185f658 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 15 Jul 2021 16:45:57 +0800
Subject: [PATCH 0013/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20[=E8=87=AA?=
=?UTF-8?q?=E5=AE=9A=E4=B9=89=E5=BD=93=E5=89=8D=E6=A8=A1=E5=BC=8F]=20?=
=?UTF-8?q?=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DarkMode.user.js | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/DarkMode.user.js b/DarkMode.user.js
index 8d80d555a..212c5d96b 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 护眼模式
-// @version 1.1.5
+// @version 1.1.6
// @author X.I.U
// @description 简单有效的全网通用护眼模式、夜间模式、暗黑模式
// @match *://*/*
@@ -75,17 +75,17 @@
let newMods, tip, defaults, name;
switch(menu_value('menu_darkModeType')) {
case 1:
- tip = '自定义 [模式 1],修改后立即生效~\n格式:亮度 (白天)|亮度 (晚上)\n默认:80|70(均为百分比 1~100,不需要 % 符号)';
+ tip = '自定义 [模式 1],修改后立即生效 (部分网页可能需要刷新)~\n格式:亮度 (白天)|亮度 (晚上)\n默认:80|70(均为百分比 1~100,不需要 % 符号)';
defaults = '80|70';
name = 'menu_customMode1';
break;
case 2:
- tip = '自定义 [模式 2],修改后立即生效~\n格式:亮度 (白天)|暖色 (白天)|亮度 (晚上)|暖色 (晚上)\n默认:80|20|70|30(均为百分比 1~100,不需要 % 符号)';
+ tip = '自定义 [模式 2],修改后立即生效 (部分网页可能需要刷新)~\n格式:亮度 (白天)|暖色 (白天)|亮度 (晚上)|暖色 (晚上)\n默认:80|20|70|30(均为百分比 1~100,不需要 % 符号)';
defaults = '80|20|70|30';
name = 'menu_customMode2';
break;
case 3:
- tip = '自定义 [模式 3],修改后立即生效~\n格式:反色\n默认:80(均为百分比 50~100,不需要 % 符号)';
+ tip = '自定义 [模式 3],修改后立即生效 (部分网页可能需要刷新)~\n格式:反色\n默认:80(均为百分比 50~100,不需要 % 符号)';
defaults = '80';
name = 'menu_customMode3';
break;
@@ -98,8 +98,10 @@
GM_setValue(`${name}`, newMods);
registerMenuCommand(); // 重新注册脚本菜单
}
- document.getElementById('XIU2DarkMode').remove(); // 即时修改样式
- addStyle();
+ if (document.getElementById('XIU2DarkMode')) {
+ document.getElementById('XIU2DarkMode').remove(); // 即时修改样式
+ addStyle();
+ }
}
From 43084d1a7684e7bda4a61dc4a03ded8abe8d566d Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 16 Jul 2021 15:02:26 +0800
Subject: [PATCH 0014/2070] README.md
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index a7163ce06..4bdb4f06b 100644
--- a/README.md
+++ b/README.md
@@ -32,7 +32,7 @@
| [
](https://www.52pojie.cn) | **吾爱破解论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/412681)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Beautification.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 增强** | **自动签到**、自动无缝翻页、屏蔽导读悬赏贴 (最新发表页)... | **[安装](https://greasyfork.org/zh-CN/scripts/412680)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Enhanced.user.js)** |
| [
](https://hostloc.com) | **全球主机交流论坛 增强 \*** | **自动访问空间、屏蔽用户**、屏蔽关键词、自动无缝翻页等... | **[安装](https://greasyfork.org/zh-CN/scripts/414005)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Hostloc-Enhanced.user.js)** |
-| [
](https://store.steampowered.com) | **Steam 创意工坊大图 修复** | 修复 Steam 创意工坊预览大图无法显示的问题 | **[安装](https://greasyfork.org/zh-CN/scripts/397666)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/SteamWorkshopImageRepair.user.js)** |
+| [
](https://store.steampowered.com) | **Steam 创意工坊大图 修复** | 修复 Steam 创意工坊预览大图无法显示的问题 | **[安装](https://github.com/XIU2/UserScript/raw/master/SteamWorkshopImageRepair.user.js)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/SteamWorkshopImageRepair.user.js)** |
> _脚本名称末尾 **`*`** 代表该脚本为**网友主动提出需求**而写的。如果你也有需求,可以[告诉我](https://github.com/XIU2/UserScript/issues/new/choose)!_
> _所有脚本均在 **Chrome、Firefox、Edge 浏览器 + Tampermonkey 扩展** 环境下测试通过!_
From 35fc4232ff8afaa0f7fbdadfa846cb037efd2cad Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 17 Jul 2021 06:32:47 +0800
Subject: [PATCH 0015/2070] Update
---
SteamWorkshopImageRepair.user.js | 22 ++++++++++------------
1 file changed, 10 insertions(+), 12 deletions(-)
diff --git a/SteamWorkshopImageRepair.user.js b/SteamWorkshopImageRepair.user.js
index 949acfa4b..5188fa9aa 100644
--- a/SteamWorkshopImageRepair.user.js
+++ b/SteamWorkshopImageRepair.user.js
@@ -1,16 +1,14 @@
// ==UserScript==
-// @name Steam Workshop Image Repair
-// @name:zh-CN Steam 创意工坊大图修复
-// @version 1.0.0
-// @author X.I.U
-// @description Fixed Steam Workshop image not showing
-// @description:zh-CN 修复 Steam 创意工坊预览大图无法显示的问题(Steam 不改的话,长期可用)
-// @match *://steamcommunity.com/sharedfiles/filedetails/*
-// @match *://steamcommunity.com/workshop/filedetails/*
-// @icon https://store.steampowered.com/favicon.ico
-// @license GPL-3.0 License
-// @run-at document-end
-// @namespace https://greasyfork.org/scripts/397666
+// @name Steam 创意工坊大图修复
+// @version 1.0.0
+// @author X.I.U
+// @description 修复 Steam 创意工坊预览大图无法显示的问题(Steam 不改的话,长期可用)
+// @match *://steamcommunity.com/sharedfiles/filedetails/*
+// @match *://steamcommunity.com/workshop/filedetails/*
+// @icon https://store.steampowered.com/favicon.ico
+// @license GPL-3.0 License
+// @run-at document-end
+// @namespace https://github.com/XIU2/UserScript
// ==/UserScript==
if(typeof onYouTubeIframeAPIReady == 'function') {
From 2fe4267aa6a95dfa41736b19865ff4b79189ea17 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 17 Jul 2021 07:09:11 +0800
Subject: [PATCH 0016/2070] =?UTF-8?q?=E8=A1=A5=E5=85=85=20=E8=84=9A?=
=?UTF-8?q?=E6=9C=AC=E5=A4=B4=E9=83=A8=E4=BF=A1=E6=81=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
3dm-Beautification.user.js | 2 ++
3dm-Enhanced.user.js | 2 ++
52pojie-Beautification.user.js | 2 ++
52pojie-Enhanced.user.js | 2 ++
Autopage.user.js | 2 ++
DarkMode.user.js | 2 ++
GithubEnhanced-High-Speed-Download.user.js | 2 ++
GoogleTranslate-Beautification.user.js | 2 ++
Hostloc-Enhanced.user.js | 2 ++
Lanzou-Enhanced.user.js | 2 ++
SteamWorkshopImageRepair.user.js | 2 ++
V2ex-Enhanced.user.js | 2 ++
Zhihu-Beautification.user.js | 2 ++
Zhihu-Enhanced.user.js | 2 ++
Zhiyoo-Beautification.user.js | 2 ++
Zhiyoo-Enhanced.user.js | 2 ++
16 files changed, 32 insertions(+)
diff --git a/3dm-Beautification.user.js b/3dm-Beautification.user.js
index fc451aa0b..b61ba0d08 100644
--- a/3dm-Beautification.user.js
+++ b/3dm-Beautification.user.js
@@ -8,6 +8,8 @@
// @license GPL-3.0 License
// @run-at document-start
// @namespace https://greasyfork.org/scripts/413593
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/3dm-Enhanced.user.js b/3dm-Enhanced.user.js
index c1f5ad0da..f76651817 100644
--- a/3dm-Enhanced.user.js
+++ b/3dm-Enhanced.user.js
@@ -15,6 +15,8 @@
// @license GPL-3.0 License
// @run-at document-end
// @namespace https://greasyfork.org/scripts/412890
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/52pojie-Beautification.user.js b/52pojie-Beautification.user.js
index 2962f6a9b..e474782ab 100644
--- a/52pojie-Beautification.user.js
+++ b/52pojie-Beautification.user.js
@@ -14,6 +14,8 @@
// @license GPL-3.0 License
// @run-at document-start
// @namespace https://greasyfork.org/scripts/412681
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/52pojie-Enhanced.user.js b/52pojie-Enhanced.user.js
index 2d1afc50a..f6481eaff 100644
--- a/52pojie-Enhanced.user.js
+++ b/52pojie-Enhanced.user.js
@@ -15,6 +15,8 @@
// @license GPL-3.0 License
// @run-at document-end
// @namespace https://greasyfork.org/scripts/412680
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/Autopage.user.js b/Autopage.user.js
index bfb05dac1..d29e3f10a 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -32,6 +32,8 @@
// @license GPL-3.0 License
// @run-at document-end
// @namespace https://github.com/XIU2/UserScript
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/DarkMode.user.js b/DarkMode.user.js
index 212c5d96b..51749f44c 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -19,6 +19,8 @@
// @license GPL-3.0 License
// @run-at document-start
// @namespace https://github.com/XIU2/UserScript
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/GithubEnhanced-High-Speed-Download.user.js b/GithubEnhanced-High-Speed-Download.user.js
index 280825532..6a59cd7af 100644
--- a/GithubEnhanced-High-Speed-Download.user.js
+++ b/GithubEnhanced-High-Speed-Download.user.js
@@ -15,6 +15,8 @@
// @license GPL-3.0 License
// @run-at document-end
// @namespace https://greasyfork.org/scripts/412245
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/GoogleTranslate-Beautification.user.js b/GoogleTranslate-Beautification.user.js
index 9fec41fe3..bcf84f370 100644
--- a/GoogleTranslate-Beautification.user.js
+++ b/GoogleTranslate-Beautification.user.js
@@ -15,6 +15,8 @@
// @license GPL-3.0 License
// @run-at document-start
// @namespace https://greasyfork.org/scripts/413721
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index d3d9cf03c..f73a824ab 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -16,6 +16,8 @@
// @license GPL-3.0 License
// @run-at document-end
// @namespace https://greasyfork.org/scripts/414005
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/Lanzou-Enhanced.user.js b/Lanzou-Enhanced.user.js
index c95f5d8ab..f18cb8db8 100644
--- a/Lanzou-Enhanced.user.js
+++ b/Lanzou-Enhanced.user.js
@@ -27,6 +27,8 @@
// @license GPL-3.0 License
// @run-at document-end
// @namespace https://github.com/XIU2/UserScript
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
var menu_ALL = [
diff --git a/SteamWorkshopImageRepair.user.js b/SteamWorkshopImageRepair.user.js
index 5188fa9aa..34498abdd 100644
--- a/SteamWorkshopImageRepair.user.js
+++ b/SteamWorkshopImageRepair.user.js
@@ -9,6 +9,8 @@
// @license GPL-3.0 License
// @run-at document-end
// @namespace https://github.com/XIU2/UserScript
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
if(typeof onYouTubeIframeAPIReady == 'function') {
diff --git a/V2ex-Enhanced.user.js b/V2ex-Enhanced.user.js
index d0a691178..e5d3ae5ee 100644
--- a/V2ex-Enhanced.user.js
+++ b/V2ex-Enhanced.user.js
@@ -16,6 +16,8 @@
// @license GPL-3.0 License
// @run-at document-end
// @namespace https://github.com/XIU2/UserScript
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/Zhihu-Beautification.user.js b/Zhihu-Beautification.user.js
index f044538a4..25ee455f7 100644
--- a/Zhihu-Beautification.user.js
+++ b/Zhihu-Beautification.user.js
@@ -15,6 +15,8 @@
// @license GPL-3.0 License
// @run-at document-start
// @namespace https://greasyfork.org/scripts/412212
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/Zhihu-Enhanced.user.js b/Zhihu-Enhanced.user.js
index 2358aeeaf..03fb456cc 100644
--- a/Zhihu-Enhanced.user.js
+++ b/Zhihu-Enhanced.user.js
@@ -15,6 +15,8 @@
// @license GPL-3.0 License
// @run-at document-end
// @namespace https://greasyfork.org/scripts/412205
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
var menu_ALL = [
diff --git a/Zhiyoo-Beautification.user.js b/Zhiyoo-Beautification.user.js
index e1bb66d9d..7d4c2100f 100644
--- a/Zhiyoo-Beautification.user.js
+++ b/Zhiyoo-Beautification.user.js
@@ -8,6 +8,8 @@
// @license GPL-3.0 License
// @run-at document-start
// @namespace https://greasyfork.org/scripts/412361
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
diff --git a/Zhiyoo-Enhanced.user.js b/Zhiyoo-Enhanced.user.js
index db22ec92f..39c37201a 100644
--- a/Zhiyoo-Enhanced.user.js
+++ b/Zhiyoo-Enhanced.user.js
@@ -16,6 +16,8 @@
// @license GPL-3.0 License
// @run-at document-end
// @namespace https://greasyfork.org/scripts/412362
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
(function() {
From ae84aee3d3c345d21a6d84e3daeefa938ddd7305 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 17 Jul 2021 09:20:07 +0800
Subject: [PATCH 0017/2070] =?UTF-8?q?=E5=90=AF=E7=94=A8=20JS=20=E4=B8=A5?=
=?UTF-8?q?=E6=A0=BC=E6=A8=A1=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
3dm-Beautification.user.js | 1 +
3dm-Enhanced.user.js | 1 +
52pojie-Beautification.user.js | 1 +
52pojie-Enhanced.user.js | 1 +
Autopage.user.js | 1 +
DarkMode.user.js | 1 +
GithubEnhanced-High-Speed-Download.user.js | 1 +
GoogleTranslate-Beautification.user.js | 1 +
Hostloc-Enhanced.user.js | 1 +
Lanzou-Enhanced.user.js | 2 ++
V2ex-Enhanced.user.js | 1 +
Zhihu-Beautification.user.js | 1 +
Zhihu-Enhanced.user.js | 1 +
Zhiyoo-Beautification.user.js | 1 +
Zhiyoo-Enhanced.user.js | 1 +
15 files changed, 16 insertions(+)
diff --git a/3dm-Beautification.user.js b/3dm-Beautification.user.js
index b61ba0d08..0a0f450c4 100644
--- a/3dm-Beautification.user.js
+++ b/3dm-Beautification.user.js
@@ -12,6 +12,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
let style_Add = document.createElement('style');
style_Add.innerHTML = `
diff --git a/3dm-Enhanced.user.js b/3dm-Enhanced.user.js
index f76651817..0a45baa35 100644
--- a/3dm-Enhanced.user.js
+++ b/3dm-Enhanced.user.js
@@ -19,6 +19,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
var menu_ALL = [
['menu_autoReply', '自动回复', '自动回复', true],
diff --git a/52pojie-Beautification.user.js b/52pojie-Beautification.user.js
index e474782ab..f18860480 100644
--- a/52pojie-Beautification.user.js
+++ b/52pojie-Beautification.user.js
@@ -18,6 +18,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
var menu_ALL = [
['menu_rule', '隐藏版规', '隐藏版规', false]
diff --git a/52pojie-Enhanced.user.js b/52pojie-Enhanced.user.js
index f6481eaff..3991fd76c 100644
--- a/52pojie-Enhanced.user.js
+++ b/52pojie-Enhanced.user.js
@@ -19,6 +19,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
var menu_ALL = [
['menu_autoClockIn', '自动签到', '自动签到', true],
diff --git a/Autopage.user.js b/Autopage.user.js
index d29e3f10a..8e68dae4e 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -36,6 +36,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
// 注册脚本菜单
GM_registerMenuCommand('反馈 & 欢迎申请支持', function () {window.GM_openInTab('https://github.com/XIU2/UserScript#xiu2userscript', {active: true,insert: true,setParent: true});window.GM_openInTab('https://greasyfork.org/zh-CN/scripts/419215/feedback', {active: true,insert: true,setParent: true});});
diff --git a/DarkMode.user.js b/DarkMode.user.js
index 51749f44c..eac1c0858 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -23,6 +23,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
var menu_ALL = [
['menu_runDuringTheDay', '白天保持开启 (比晚上亮一点点)', '白天保持开启', true],
diff --git a/GithubEnhanced-High-Speed-Download.user.js b/GithubEnhanced-High-Speed-Download.user.js
index 6a59cd7af..58fff9269 100644
--- a/GithubEnhanced-High-Speed-Download.user.js
+++ b/GithubEnhanced-High-Speed-Download.user.js
@@ -19,6 +19,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
var backColor = '#ffffff';
var fontColor = '#888888';
diff --git a/GoogleTranslate-Beautification.user.js b/GoogleTranslate-Beautification.user.js
index bcf84f370..6c6904a28 100644
--- a/GoogleTranslate-Beautification.user.js
+++ b/GoogleTranslate-Beautification.user.js
@@ -19,6 +19,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
var menu_streamline = GM_getValue('xiu2_menu_streamline');
var menu_streamline_ID, menu_feedBack_ID;
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index f73a824ab..491458b30 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -20,6 +20,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
var menu_ALL = [
['menu_autoSignIn', '自动签到', '自动签到', true],
diff --git a/Lanzou-Enhanced.user.js b/Lanzou-Enhanced.user.js
index f18cb8db8..abdf128e5 100644
--- a/Lanzou-Enhanced.user.js
+++ b/Lanzou-Enhanced.user.js
@@ -30,6 +30,8 @@
// @supportURL https://github.com/XIU2/UserScript
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+
+'use strict';
(function() {
var menu_ALL = [
['menu_open_fileSha', '自动打开分享链接', '自动打开分享链接', true],
diff --git a/V2ex-Enhanced.user.js b/V2ex-Enhanced.user.js
index e5d3ae5ee..eeb2d403a 100644
--- a/V2ex-Enhanced.user.js
+++ b/V2ex-Enhanced.user.js
@@ -20,6 +20,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
var menu_ALL = [
['menu_autoClockIn', '自动签到', '自动签到', true],
diff --git a/Zhihu-Beautification.user.js b/Zhihu-Beautification.user.js
index 25ee455f7..e65c37990 100644
--- a/Zhihu-Beautification.user.js
+++ b/Zhihu-Beautification.user.js
@@ -19,6 +19,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
var menu_ALL = [
['menu_widescreenDisplay', '宽屏显示', '宽屏显示', true],
diff --git a/Zhihu-Enhanced.user.js b/Zhihu-Enhanced.user.js
index 03fb456cc..58088e49c 100644
--- a/Zhihu-Enhanced.user.js
+++ b/Zhihu-Enhanced.user.js
@@ -19,6 +19,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
var menu_ALL = [
['menu_collapsedAnswer', '一键收起回答', '一键收起回答', true],
['menu_collapsedNowAnswer', '收起当前回答/评论(点击两侧空白处)', '收起当前回答/评论', true],
diff --git a/Zhiyoo-Beautification.user.js b/Zhiyoo-Beautification.user.js
index 7d4c2100f..43569b53f 100644
--- a/Zhiyoo-Beautification.user.js
+++ b/Zhiyoo-Beautification.user.js
@@ -12,6 +12,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
let style_Add = document.createElement('style');
style_Add.innerHTML = `
diff --git a/Zhiyoo-Enhanced.user.js b/Zhiyoo-Enhanced.user.js
index 39c37201a..0a271d61f 100644
--- a/Zhiyoo-Enhanced.user.js
+++ b/Zhiyoo-Enhanced.user.js
@@ -20,6 +20,7 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
+'use strict';
(function() {
var menu_ALL = [
['menu_autoReply', '自动回复', '自动回复', true],
From 283b5724674b2177405c935e83b9066c92994077 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 17 Jul 2021 20:51:07 +0800
Subject: [PATCH 0018/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E8=87=AA?=
=?UTF-8?q?=E5=8A=A8=E6=97=A0=E7=BC=9D=E7=BF=BB=E9=A1=B5]=20=E6=94=AF?=
=?UTF-8?q?=E6=8C=81=E5=88=AB=E4=BA=BA=E7=9A=84=E5=9B=9E=E5=A4=8D=E5=88=97?=
=?UTF-8?q?=E8=A1=A8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Hostloc-Enhanced.user.js | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index 491458b30..2248b96bd 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 全球主机交流论坛增强
-// @version 1.2.9
+// @version 1.3.0
// @author X.I.U
// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、回帖小尾巴、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
// @match *://hostloc.com/*
@@ -137,6 +137,15 @@
HT_insert: ['css;div#threadlist div.bm_c table', 2],
replaceE: 'css;div.pg',
}
+ },
+ youreply: {
+ SiteTypeID: 5,
+ pager: {
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;tbody > tr',
+ HT_insert: ['css;tbody', 2],
+ replaceE: 'css;div.pg',
+ }
}
};
@@ -183,6 +192,8 @@
blockUsers('pm'); // 屏蔽用户(黑名单)
} else if(location.pathname === '/forum.php' && location.search.indexOf('mod=guide&view=my&type=reply') > -1) { // 我的帖子:回复
curSite = DBSite.myreply;
+ } else if(location.pathname === '/home.php' && location.search.indexOf('&do=thread&view=me') > -1) { // 别人的帖子:回复
+ curSite = DBSite.youreply;
} else if(location.pathname === '/forum.php' && location.search.indexOf('mod=post&action=reply') > -1 || location.pathname === '/forum.php' && location.search.indexOf('mod=post&action=newthread') > -1) { // 回复:高级回复
littleTail('reply'); // 小尾巴
}
From 8c29d632c9edb963d0189efd6a932263621196c7 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Mon, 19 Jul 2021 15:35:49 +0800
Subject: [PATCH 0019/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=B1=8F?=
=?UTF-8?q?=E8=94=BD=E7=94=A8=E6=88=B7]=20=E6=8C=89=E9=92=AE=E5=88=B0?=
=?UTF-8?q?=E7=BD=91=E9=A1=B5=E4=B8=AD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Zhihu-Enhanced.user.js | 66 +++++++++++++++++++++++++++++++++++++++---
1 file changed, 62 insertions(+), 4 deletions(-)
diff --git a/Zhihu-Enhanced.user.js b/Zhihu-Enhanced.user.js
index 58088e49c..c550db2a8 100644
--- a/Zhihu-Enhanced.user.js
+++ b/Zhihu-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 知乎增强
-// @version 1.4.6
+// @version 1.4.7
// @author X.I.U
// @description 移除登录弹窗、一键收起回答、收起当前回答/评论(点击两侧空白处)、快捷回到顶部(右键两侧空白处)、屏蔽指定用户、屏蔽指定关键词(标题)、屏蔽盐选内容、置顶显示时间、显示问题时间、区分问题文章、默认高清原图、默认站外直链
// @match *://www.zhihu.com/*
@@ -14,7 +14,7 @@
// @grant GM_notification
// @license GPL-3.0 License
// @run-at document-end
-// @namespace https://greasyfork.org/scripts/412205
+// @namespace https://greasyfork.org/scripts/4122051
// @supportURL https://github.com/XIU2/UserScript
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
@@ -244,8 +244,12 @@ function blockUsers(type) {
case 'search':
blockUsers_search();
break;
+ case 'people':
+ blockUsers_button_people(); // 添加屏蔽用户按钮(用户主页)
+ break;
}
- blockUsers_comment(); // 评论区
+ blockUsers_comment(); // 评论区
+ blockUsers_button(); // 加入黑名单按钮
function blockUsers_index() {
let blockUsers = e => {
@@ -346,11 +350,65 @@ function blockUsers(type) {
}
}
})
+
+ // 添加屏蔽用户按钮(点赞、回复等按钮后面)
+ if (item1) {
+ let footer = item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.querySelector('.CommentItemV2-metaSibling > .CommentItemV2-footer');
+ if (footer && !footer.lastElementChild.dataset.name) {
+ footer.insertAdjacentHTML('beforeend',``);
+ footer.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name)}
+ }
+ }
})
}
}
document.addEventListener('DOMNodeInserted', blockUsers); // 监听插入事件
}
+
+ // 添加屏蔽用户按钮(用户信息悬浮框中)
+ function blockUsers_button() {
+ let blockUsers = e => {
+ if (e.target.innerHTML && e.target.querySelector('.MemberButtonGroup.ProfileButtonGroup.HoverCard-buttons')) {
+ let item = e.target.querySelector('.MemberButtonGroup.ProfileButtonGroup.HoverCard-buttons'),
+ name = item.parentNode.parentNode.querySelector('a.UserLink-link').innerText;
+ item.insertAdjacentHTML('beforeend', ``);
+ item.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name)}
+ }
+ }
+ document.addEventListener('DOMNodeInserted', blockUsers); // 监听插入事件
+ }
+
+ // 添加屏蔽用户按钮(用户主页)
+ function blockUsers_button_people() {
+ let item = document.querySelector('.MemberButtonGroup.ProfileButtonGroup.ProfileHeader-buttons'), // 获取按钮元素位置
+ name = document.querySelector('.ProfileHeader-name').firstChild.textContent, // 获取用户名
+ users = menu_value('menu_customBlockUsers'); // 读取屏蔽列表
+ for (let num = 0;num已屏蔽`);
+ return
+ }
+ };
+ if (item) {
+ item.insertAdjacentHTML('beforeend', ``);
+ item.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name)}
+ }
+ }
+
+ // 屏蔽用户按钮绑定事件
+ function blockUsers_button_add(name) {
+ if (!name) return
+ let users = menu_value('menu_customBlockUsers'); // 读取屏蔽列表
+ for (let num = 0;num
Date: Tue, 20 Jul 2021 12:20:16 +0800
Subject: [PATCH 0020/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=BC=BA?=
=?UTF-8?q?=E5=88=B6=E5=BD=93=E5=89=8D=E7=BD=91=E7=AB=99=E5=90=AF=E7=94=A8?=
=?UTF-8?q?=E6=8A=A4=E7=9C=BC=E6=A8=A1=E5=BC=8F]=20=E5=8A=9F=E8=83=BD;=20?=
=?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=AF=B9=E5=BD=93=E5=89=8D=E7=BD=91?=
=?UTF-8?q?=E7=AB=99=E5=90=AF=E7=94=A8/=E7=A6=81=E7=94=A8]=20=E5=8A=9F?=
=?UTF-8?q?=E8=83=BD;=20=E4=BC=98=E5=8C=96=20=E8=84=9A=E6=9C=AC=E8=8F=9C?=
=?UTF-8?q?=E5=8D=95=E7=AD=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DarkMode.user.js | 172 ++++++++++++++++++++++++++++++++++++++++-------
1 file changed, 149 insertions(+), 23 deletions(-)
diff --git a/DarkMode.user.js b/DarkMode.user.js
index eac1c0858..6d10fb7db 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 护眼模式
-// @version 1.1.6
+// @version 1.2.0
// @author X.I.U
// @description 简单有效的全网通用护眼模式、夜间模式、暗黑模式
// @match *://*/*
@@ -26,19 +26,18 @@
'use strict';
(function() {
var menu_ALL = [
+ ['menu_disable', '✅ 已启用 (点击对当前网站禁用)', '❎ 已禁用 (点击对当前网站启用)', []],
['menu_runDuringTheDay', '白天保持开启 (比晚上亮一点点)', '白天保持开启', true],
- ['menu_autoRecognition', '排除自带暗黑模式的网页 (beta)', '排除自带暗黑模式的网页 (beta)', true],
+ ['menu_autoRecognition', '智能排除自带暗黑模式的网页 (beta)', '智能排除自带暗黑模式的网页 (beta)', true],
+ ['menu_forcedToEnable', '✅ 已强制当前网站启用护眼模式 (👆)', '❎ 未强制当前网站启用护眼模式 (👆)', []],
['menu_darkModeType', '点击切换模式', '点击切换模式', 1],
- ['menu_customMode', '自定义当前模式', '自定义当前模式', '80|70'],
- ['menu_customMode1', '自定义模式 1', '自定义模式 1', '80|70'],
- ['menu_customMode2', '自定义模式 2', '自定义模式 2', '80|20|70|30'],
- ['menu_customMode3', '自定义模式 3', '自定义模式 3', '80']
- ], menu_ID = [], websiteList = ['rarbgprx.org','fitgirl-repacks.site','masquerade.site','www.gamersky.com'];
+ ['menu_customMode', '自定义当前模式', '自定义当前模式', true], ['menu_customMode1',,,'80|70'], ['menu_customMode2',,,'80|20|70|30'], ['menu_customMode3',,,'80']
+ ], menu_ID = [];
for (let i=0;i 1) {addStyle();}
// 注册脚本菜单
@@ -50,29 +49,66 @@
}
for (let i=0;i 3){ // 避免在减少 raw 数组后,用户储存的数据大于数组而报错
+ if (menu_ALL[i][0] === 'menu_disable')
+ { // 启用/禁用护眼模式 (当前网站)
+ if (menu_disable('check')) { // 当前网站是否已存在禁用列表中
+ menu_ID[i] = GM_registerMenuCommand(`${menu_ALL[i][2]}`, function(){menu_disable('del')});
+ return
+ } else {
+ menu_ID[i] = GM_registerMenuCommand(`${menu_ALL[i][1]}`, function(){menu_disable('add')});
+ }
+ }
+ else if (menu_ALL[i][0] === 'menu_darkModeType')
+ { // 点击切换模式
+ if (menu_ALL[i][3] > 3) { // 避免在减少 raw 数组后,用户储存的数据大于数组而报错
menu_ALL[i][3] = 1;
- GM_setValue('menu_darkModeType', menu_ALL[i][3]);
+ GM_setValue(menu_ALL[i][0], menu_ALL[i][3]);
}
- menu_ID[i] = GM_registerMenuCommand(`🔄 [ ${menu_ALL[i][3]} ] ${menu_ALL[i][1]}`, function(){menu_toggle(`${menu_ALL[i][3]}`,`${menu_ALL[i][0]}`)});
- } else if (menu_ALL[i][0] === 'menu_customMode') {
- GM_setValue('menu_customMode', menu_ALL[i][3]);
- menu_ID[i] = GM_registerMenuCommand(`✅ ${menu_ALL[i][1]}`, function(){menu_customMode()});
- } else if (menu_ALL[i][0] === 'menu_customMode1') {
- GM_setValue('menu_customMode1', menu_ALL[i][3]);
- } else if (menu_ALL[i][0] === 'menu_customMode2') {
- GM_setValue('menu_customMode2', menu_ALL[i][3]);
- } else if (menu_ALL[i][0] === 'menu_customMode3') {
- GM_setValue('menu_customMode3', menu_ALL[i][3]);
- } else {
- menu_ID[i] = GM_registerMenuCommand(`🌝 [ ${menu_ALL[i][3]?'√':'×'} ] ${menu_ALL[i][1]}`, function(){menu_switch(`${menu_ALL[i][3]}`,`${menu_ALL[i][0]}`,`${menu_ALL[i][2]}`)});
+ menu_ID[i] = GM_registerMenuCommand(`${menu_num(menu_ALL[i][3])} ${menu_ALL[i][1]}`, function(){menu_toggle(`${menu_ALL[i][3]}`,`${menu_ALL[i][0]}`)});
+ }
+ else if (menu_ALL[i][0] === 'menu_customMode')
+ { // 自定义当前模式
+ GM_setValue(menu_ALL[i][0], menu_ALL[i][3]);
+ menu_ID[i] = GM_registerMenuCommand(`#️⃣ ${menu_ALL[i][1]}`, function(){menu_customMode()});
+ }
+ else if (menu_ALL[i][0] === 'menu_customMode1' || menu_ALL[i][0] === 'menu_customMode2' || menu_ALL[i][0] === 'menu_customMode3')
+ { // 当前模式值
+ GM_setValue(menu_ALL[i][0], menu_ALL[i][3]);
+ }
+ else if (menu_ALL[i][0] === 'menu_forcedToEnable')
+ { // 强制当前网站启用护眼模式
+ if (menu_value('menu_autoRecognition')) { // 自动排除自带暗黑模式的网页 (beta)
+ if (menu_forcedToEnable('check')) { // 当前网站是否已存在列表中
+ menu_ID[i] = GM_registerMenuCommand(`${menu_ALL[i][1]}`, function(){menu_forcedToEnable('del')});
+ } else {
+ menu_ID[i] = GM_registerMenuCommand(`${menu_ALL[i][2]}`, function(){menu_forcedToEnable('add')});
+ }
+ }
+ }
+ else
+ {
+ menu_ID[i] = GM_registerMenuCommand(`${menu_ALL[i][3]?'✅':'❎'} ${menu_ALL[i][1]}`, function(){menu_switch(`${menu_ALL[i][3]}`,`${menu_ALL[i][0]}`,`${menu_ALL[i][2]}`)});
}
}
menu_ID[menu_ID.length] = GM_registerMenuCommand('💬 反馈 & 建议', function () {window.GM_openInTab('https://github.com/XIU2/UserScript#xiu2userscript', {active: true,insert: true,setParent: true});window.GM_openInTab('https://greasyfork.org/zh-CN/scripts/412212/feedback', {active: true,insert: true,setParent: true});});
}
+ function menu_num(num) {
+ switch(num) {
+ case 1:
+ return '1️⃣'
+ break;
+ case 2:
+ return '2️⃣'
+ break;
+ case 3:
+ return '3️⃣'
+ break;
+ }
+ }
+
+
// 自定义当前模式
function menu_customMode() {
let newMods, tip, defaults, name;
@@ -108,6 +144,94 @@
}
+ // 强制当前网站启用护眼模式
+ function menu_forcedToEnable(type) {
+ switch(type) {
+ case 'check':
+ if(check()) return true
+ return false
+ break;
+ case 'add':
+ add();
+ break;
+ case 'del':
+ del();
+ break;
+ }
+
+ function check() { // 存在返回真,不存在返回假
+ let websiteList = menu_value('menu_forcedToEnable'); // 读取网站列表
+ for (let num = 0;num
Date: Tue, 20 Jul 2021 12:38:28 +0800
Subject: [PATCH 0021/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DarkMode.user.js | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/DarkMode.user.js b/DarkMode.user.js
index 6d10fb7db..d9d2d85b8 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 护眼模式
-// @version 1.2.0
+// @version 1.2.1
// @author X.I.U
// @description 简单有效的全网通用护眼模式、夜间模式、暗黑模式
// @match *://*/*
@@ -254,6 +254,9 @@
GM_setValue(`${Name}`, true);
GM_notification({text: `已开启 [${Tips}] 功能\n(刷新网页后生效)`, timeout: 3500});
}
+ if (Name === 'menu_autoRecognition') {
+ location.reload(); // 刷新网页
+ }
registerMenuCommand(); // 重新注册脚本菜单
};
@@ -332,7 +335,10 @@
}, 5);
}
- let websiteList = menu_value('menu_forcedToEnable'); // 强制当前网站启用护眼模式
+ let websiteList = [];
+ if (menu_value('menu_autoRecognition')) { // 智能排除自带暗黑模式的网页 (beta)
+ websiteList = menu_value('menu_forcedToEnable'); // 强制当前网站启用护眼模式
+ }
// 为了避免 body 还没加载导致无法检查是否设置背景颜色
let timer = setInterval(function(){ // 每 10 毫秒检查一下 body 是否已存在
From 7d869623cb783e4230684e5b2fa64ef3229d8192 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Tue, 20 Jul 2021 13:33:51 +0800
Subject: [PATCH 0022/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E8=84=9A?=
=?UTF-8?q?=E6=9C=AC=E8=8F=9C=E5=8D=95=E5=9B=BE=E6=A0=87?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
3dm-Enhanced.user.js | 4 +--
52pojie-Beautification.user.js | 32 ++++++++++++++--------
52pojie-Enhanced.user.js | 4 +--
Autopage.user.js | 2 +-
GithubEnhanced-High-Speed-Download.user.js | 28 ++++++++++++++++++-
Hostloc-Enhanced.user.js | 12 ++++----
Lanzou-Enhanced.user.js | 6 ++--
V2ex-Enhanced.user.js | 4 +--
Zhihu-Beautification.user.js | 23 ++++++++++++++--
Zhihu-Enhanced.user.js | 8 +++---
Zhiyoo-Enhanced.user.js | 19 ++++---------
11 files changed, 93 insertions(+), 49 deletions(-)
diff --git a/3dm-Enhanced.user.js b/3dm-Enhanced.user.js
index 0a45baa35..1ab45edda 100644
--- a/3dm-Enhanced.user.js
+++ b/3dm-Enhanced.user.js
@@ -41,9 +41,9 @@
}
for (let i=0;i raw_url.length - 1) { // 避免在减少 raw 数组后,用户储存的数据大于数组而报错
menu_raw_fast = 0
}
- menu_menu_raw_fast_ID = GM_registerMenuCommand(`🔄 [ ${raw_url[menu_raw_fast][1]} ] 加速源 (☁) - 点击切换`, menu_toggle_raw_fast);
+ menu_menu_raw_fast_ID = GM_registerMenuCommand(`${menu_num(menu_raw_fast)} [ ${raw_url[menu_raw_fast][1]} ] 加速源 (☁) - 点击切换`, menu_toggle_raw_fast);
menu_feedBack_ID = GM_registerMenuCommand('💬 反馈 & 建议 [Github]', function () {window.GM_openInTab('https://github.com/XIU2/UserScript', {active: true,insert: true,setParent: true});window.GM_openInTab('https://greasyfork.org/zh-CN/scripts/412245/feedback', {active: true,insert: true,setParent: true});});
}
@@ -109,6 +109,32 @@
registerMenuCommand(); // 重新注册脚本菜单
};
+ function menu_num(num) {
+ switch(num) {
+ case 0:
+ return '0️⃣'
+ break;
+ case 1:
+ return '1️⃣'
+ break;
+ case 2:
+ return '2️⃣'
+ break;
+ case 3:
+ return '3️⃣'
+ break;
+ case 4:
+ return '4️⃣'
+ break;
+ case 5:
+ return '5️⃣'
+ break;
+ case 6:
+ return '6️⃣'
+ break;
+ }
+ }
+
addRelease(); // Release 加速
addDownloadZIP(); // Download ZIP 加速
addGitClone(); // Git Clone 加速
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index 2248b96bd..884f077d7 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -53,18 +53,18 @@
for (let i=0;i
Date: Thu, 22 Jul 2021 11:47:26 +0800
Subject: [PATCH 0023/2070] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20=E4=B9=8B?=
=?UTF-8?q?=E5=89=8D=E6=9F=90=E6=AC=A1=E6=9B=B4=E6=96=B0=E5=90=8E=E5=AF=BC?=
=?UTF-8?q?=E8=87=B4=E6=B5=8F=E8=A7=88=E5=99=A8=E5=89=8D=E8=BF=9B/?=
=?UTF-8?q?=E5=90=8E=E9=80=80=E9=9C=80=E8=A6=81=E7=82=B9=E5=87=BB=E4=B8=A4?=
=?UTF-8?q?=E6=AC=A1=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
GithubEnhanced-High-Speed-Download.user.js | 44 +++++++++++++++++++---
1 file changed, 39 insertions(+), 5 deletions(-)
diff --git a/GithubEnhanced-High-Speed-Download.user.js b/GithubEnhanced-High-Speed-Download.user.js
index 801f2a5c8..41d4f8294 100644
--- a/GithubEnhanced-High-Speed-Download.user.js
+++ b/GithubEnhanced-High-Speed-Download.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name Github 增强 - 高速下载
-// @version 1.5.5
+// @version 1.5.6
// @author X.I.U
// @description 高速下载 Git Clone/SSH、Release、Raw、Code(ZIP) 等文件、项目列表单文件快捷下载 (☁)
// @match *://github.com/*
@@ -19,8 +19,8 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
-'use strict';
(function() {
+ 'use strict';
var backColor = '#ffffff';
var fontColor = '#888888';
if (document.getElementsByTagName('html')[0].getAttribute('data-color-mode') === 'dark') { // 黑暗模式判断
@@ -151,15 +151,27 @@
setTimeout(addRawDownLink, 2000); // 添加 Raw 下载链接(☁),延迟 2 秒执行,避免被 pjax 刷掉
});
- pushHistory();
+ addLocationchange();
+ window.addEventListener('locationchange', function(){
+ addRawDownLink_(); // 在浏览器返回/前进时重新添加 Raw 下载链接(☁)事件
+ })
+
+ /*pushHistory();
window.addEventListener('popstate', function(e) {
- addRawDownLink_(); // 在浏览器返回/前进时重新添加 Raw 下载链接(☁)鼠标事件
+ addRawDownLink_(); // 在浏览器返回/前进时重新添加 Raw 下载链接(☁)事件
}, false);
function pushHistory() {
let state = {title: 'title',url: '#'};
window.history.pushState(state, '', '');
- }
+ }*/
+ /*let oldUrl = location.href,
+ timer = setInterval(function(){
+ if (oldUrl != location.href) {
+ oldUrl = location.href;
+ addRawDownLink_(); // 在浏览器返回/前进时重新添加 Raw 下载链接(☁)事件
+ }
+ }, 1000);*/
// Release
function addRelease() {
@@ -410,4 +422,26 @@
trElm.onmouseout = mouseOutHandler;
});
}
+
+
+ // 自定义 locationchange 事件(用来监听 URL 变化,针对的是 Github 这种因为使用 pjax 而无法依靠 hashchange 监听的网页)
+ function addLocationchange() {
+ history.pushState = ( f => function pushState(){
+ var ret = f.apply(this, arguments);
+ window.dispatchEvent(new Event('pushstate'));
+ window.dispatchEvent(new Event('locationchange'));
+ return ret;
+ })(history.pushState);
+
+ history.replaceState = ( f => function replaceState(){
+ var ret = f.apply(this, arguments);
+ window.dispatchEvent(new Event('replacestate'));
+ window.dispatchEvent(new Event('locationchange'));
+ return ret;
+ })(history.replaceState);
+
+ window.addEventListener('popstate',()=>{
+ window.dispatchEvent(new Event('locationchange'))
+ });
+ }
})();
\ No newline at end of file
From 9092e5d3eba4798afb4bbe71df8e710667ca354a Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 22 Jul 2021 12:14:39 +0800
Subject: [PATCH 0024/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E6=96=B0?=
=?UTF-8?q?=E6=A0=87=E7=AD=BE=E9=A1=B5=E6=89=93=E5=BC=80=E9=93=BE=E6=8E=A5?=
=?UTF-8?q?]=20=E8=84=9A=E6=9C=AC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 1 +
TargetBlank.user.js | 21 +++++++++++++++++++++
2 files changed, 22 insertions(+)
create mode 100644 TargetBlank.user.js
diff --git a/README.md b/README.md
index 4bdb4f06b..68f6bb817 100644
--- a/README.md
+++ b/README.md
@@ -29,6 +29,7 @@
| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 增强** | 自动签到、**自动回复**、自动无缝翻页、快捷回到顶部、附件... | **[安装](https://greasyfork.org/zh-CN/scripts/412362)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Enhanced.user.js)** |
| [
](https://www.lanzou.com) | **蓝奏云网盘 增强 \*** | 刷新不回根目录、**右键显示菜单**、自动显示更多文件、自动... | **[安装](https://greasyfork.org/zh-CN/scripts/419224)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Lanzou-Enhanced.user.js)** |
| [
](https://translate.google.cn) | ~~_**Google 翻译 美化**_~~ | ~~_精简多余内容、修复翻译结果溢出屏幕问题_~~ | ~~_**[安装](https://zhuanlan.zhihu.com/p/286815739)** \| **[备用](https://zhuanlan.zhihu.com/p/286815739)**_~~ |
+| [
](https://github.com/XIU2) | **新标签页打开链接** | 将网页中所有链接改为新标签页打开~ | **[安装](https://greasyfork.org/zh-CN/scripts/426377)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/TargetBlank.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/412681)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Beautification.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 增强** | **自动签到**、自动无缝翻页、屏蔽导读悬赏贴 (最新发表页)... | **[安装](https://greasyfork.org/zh-CN/scripts/412680)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Enhanced.user.js)** |
| [
](https://hostloc.com) | **全球主机交流论坛 增强 \*** | **自动访问空间、屏蔽用户**、屏蔽关键词、自动无缝翻页等... | **[安装](https://greasyfork.org/zh-CN/scripts/414005)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Hostloc-Enhanced.user.js)** |
diff --git a/TargetBlank.user.js b/TargetBlank.user.js
new file mode 100644
index 000000000..702a269b5
--- /dev/null
+++ b/TargetBlank.user.js
@@ -0,0 +1,21 @@
+// ==UserScript==
+// @name 新标签页打开链接
+// @version 1.0.0
+// @author X.I.U
+// @description 将网页中所有链接改为新标签页打开~
+// @match *://*/*
+// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
+// @grant none
+// @license GPL-3.0 License
+// @run-at document-end
+// @namespace https://github.com/XIU2/UserScript
+// @supportURL https://github.com/XIU2/UserScript
+// @homepageURL https://github.com/XIU2/UserScript
+// ==/UserScript==
+
+(function() {
+ 'use strict';
+ Array.from(document.links).forEach(function (_this) {
+ _this.target = '_blank'
+ })
+})();
\ No newline at end of file
From 32cbb40caf47956f271caf395d23f6bc2a6e5c72 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 22 Jul 2021 12:27:46 +0800
Subject: [PATCH 0025/2070] README.md
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 68f6bb817..519532b8c 100644
--- a/README.md
+++ b/README.md
@@ -29,7 +29,7 @@
| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 增强** | 自动签到、**自动回复**、自动无缝翻页、快捷回到顶部、附件... | **[安装](https://greasyfork.org/zh-CN/scripts/412362)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Enhanced.user.js)** |
| [
](https://www.lanzou.com) | **蓝奏云网盘 增强 \*** | 刷新不回根目录、**右键显示菜单**、自动显示更多文件、自动... | **[安装](https://greasyfork.org/zh-CN/scripts/419224)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Lanzou-Enhanced.user.js)** |
| [
](https://translate.google.cn) | ~~_**Google 翻译 美化**_~~ | ~~_精简多余内容、修复翻译结果溢出屏幕问题_~~ | ~~_**[安装](https://zhuanlan.zhihu.com/p/286815739)** \| **[备用](https://zhuanlan.zhihu.com/p/286815739)**_~~ |
-| [
](https://github.com/XIU2) | **新标签页打开链接** | 将网页中所有链接改为新标签页打开~ | **[安装](https://greasyfork.org/zh-CN/scripts/426377)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/TargetBlank.user.js)** |
+| [
](https://github.com/XIU2) | **新标签页打开链接** | 将网页中所有链接改为新标签页打开~ | **[安装](https://greasyfork.org/zh-CN/scripts/429714)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/TargetBlank.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/412681)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Beautification.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 增强** | **自动签到**、自动无缝翻页、屏蔽导读悬赏贴 (最新发表页)... | **[安装](https://greasyfork.org/zh-CN/scripts/412680)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Enhanced.user.js)** |
| [
](https://hostloc.com) | **全球主机交流论坛 增强 \*** | **自动访问空间、屏蔽用户**、屏蔽关键词、自动无缝翻页等... | **[安装](https://greasyfork.org/zh-CN/scripts/414005)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Hostloc-Enhanced.user.js)** |
From c43823cf5ae8da0822fa6e9852a70177587a0024 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 22 Jul 2021 12:45:44 +0800
Subject: [PATCH 0026/2070] README.md
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 519532b8c..a3ef7abfb 100644
--- a/README.md
+++ b/README.md
@@ -29,7 +29,7 @@
| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 增强** | 自动签到、**自动回复**、自动无缝翻页、快捷回到顶部、附件... | **[安装](https://greasyfork.org/zh-CN/scripts/412362)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Enhanced.user.js)** |
| [
](https://www.lanzou.com) | **蓝奏云网盘 增强 \*** | 刷新不回根目录、**右键显示菜单**、自动显示更多文件、自动... | **[安装](https://greasyfork.org/zh-CN/scripts/419224)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Lanzou-Enhanced.user.js)** |
| [
](https://translate.google.cn) | ~~_**Google 翻译 美化**_~~ | ~~_精简多余内容、修复翻译结果溢出屏幕问题_~~ | ~~_**[安装](https://zhuanlan.zhihu.com/p/286815739)** \| **[备用](https://zhuanlan.zhihu.com/p/286815739)**_~~ |
-| [
](https://github.com/XIU2) | **新标签页打开链接** | 将网页中所有链接改为新标签页打开~ | **[安装](https://greasyfork.org/zh-CN/scripts/429714)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/TargetBlank.user.js)** |
+| [
](https://github.com/XIU2) | **新标签页打开链接 \*** | 将网页中所有链接改为新标签页打开~ | **[安装](https://greasyfork.org/zh-CN/scripts/429714)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/TargetBlank.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/412681)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Beautification.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 增强** | **自动签到**、自动无缝翻页、屏蔽导读悬赏贴 (最新发表页)... | **[安装](https://greasyfork.org/zh-CN/scripts/412680)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Enhanced.user.js)** |
| [
](https://hostloc.com) | **全球主机交流论坛 增强 \*** | **自动访问空间、屏蔽用户**、屏蔽关键词、自动无缝翻页等... | **[安装](https://greasyfork.org/zh-CN/scripts/414005)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Hostloc-Enhanced.user.js)** |
From f4d02e3f308a4efacd91e2b4b5e071baf76bca30 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 23 Jul 2021 07:48:50 +0800
Subject: [PATCH 0027/2070] README.md
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index a3ef7abfb..69de3f2e9 100644
--- a/README.md
+++ b/README.md
@@ -60,4 +60,4 @@ The GPL-3.0 License.
所有脚本仅供学习交流,请勿用于商用等其他用途。
-软件所有权归 X.I.U(XIU2) 所有。
\ No newline at end of file
+脚本所有权归 X.I.U(XIU2) 所有。
\ No newline at end of file
From 49cfa531a5a45e75beefa801f383c4c56b9364b2 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 23 Jul 2021 20:48:07 +0800
Subject: [PATCH 0028/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=B1=8F?=
=?UTF-8?q?=E8=94=BD=E7=94=A8=E6=88=B7]=20=E5=8A=9F=E8=83=BD=E6=94=AF?=
=?UTF-8?q?=E6=8C=81=E5=90=8C=E6=97=B6=E6=B7=BB=E5=8A=A0=E5=88=B0=E7=9F=A5?=
=?UTF-8?q?=E4=B9=8E=E8=87=AA=E5=B8=A6=E7=9A=84=E9=BB=91=E5=90=8D=E5=8D=95?=
=?UTF-8?q?=E4=B8=AD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Zhihu-Enhanced.user.js | 86 ++++++++++++++++++++++++++++++++----------
1 file changed, 66 insertions(+), 20 deletions(-)
diff --git a/Zhihu-Enhanced.user.js b/Zhihu-Enhanced.user.js
index a7b5d3b7d..a53d230d4 100644
--- a/Zhihu-Enhanced.user.js
+++ b/Zhihu-Enhanced.user.js
@@ -1,11 +1,12 @@
// ==UserScript==
// @name 知乎增强
-// @version 1.4.7
+// @version 1.4.8
// @author X.I.U
// @description 移除登录弹窗、一键收起回答、收起当前回答/评论(点击两侧空白处)、快捷回到顶部(右键两侧空白处)、屏蔽指定用户、屏蔽指定关键词(标题)、屏蔽盐选内容、置顶显示时间、显示问题时间、区分问题文章、默认高清原图、默认站外直链
// @match *://www.zhihu.com/*
// @match *://zhuanlan.zhihu.com/*
// @icon https://static.zhihu.com/heifetz/favicon.ico
+// @grant GM_xmlhttpRequest
// @grant GM_registerMenuCommand
// @grant GM_unregisterMenuCommand
// @grant GM_openInTab
@@ -218,7 +219,7 @@ function isElementInViewport(el) {
// 自定义屏蔽用户
function customBlockUsers() {
let nowBlockUsers = '';
- menu_value('menu_customBlockUsers').forEach(function(item){nowBlockUsers = nowBlockUsers + '|' + item})
+ menu_value('menu_customBlockUsers').forEach(function(item){nowBlockUsers += '|' + item})
let newBlockUsers = prompt('编辑 [自定义屏蔽用户]\n(不同用户名之间使用 "|" 分隔,例如:用户A|用户B|用户C )', nowBlockUsers.replace('|',''));
if (newBlockUsers === '') {
GM_setValue('menu_customBlockUsers', []);
@@ -353,10 +354,12 @@ function blockUsers(type) {
// 添加屏蔽用户按钮(点赞、回复等按钮后面)
if (item1) {
- let footer = item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.querySelector('.CommentItemV2-metaSibling > .CommentItemV2-footer');
- if (footer && !footer.lastElementChild.dataset.name) {
- footer.insertAdjacentHTML('beforeend',``);
- footer.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name)}
+ let footer = item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.querySelector('.CommentItemV2-metaSibling > .CommentItemV2-footer'),
+ userid = item1.parentNode;
+ if (userid && footer && !footer.lastElementChild.dataset.name) {
+ userid = userid.href.split('/')[4];
+ footer.insertAdjacentHTML('beforeend',``);
+ footer.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name, this.dataset.userid, false)}
}
}
})
@@ -370,9 +373,11 @@ function blockUsers(type) {
let blockUsers = e => {
if (e.target.innerHTML && e.target.querySelector('.MemberButtonGroup.ProfileButtonGroup.HoverCard-buttons')) {
let item = e.target.querySelector('.MemberButtonGroup.ProfileButtonGroup.HoverCard-buttons'),
- name = item.parentNode.parentNode.querySelector('a.UserLink-link').innerText;
- item.insertAdjacentHTML('beforeend', ``);
- item.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name)}
+ item1 = item.parentNode.parentNode.querySelector('a.UserLink-link'),
+ name = item1.innerText,
+ userid = item1.href.split('/')[4];
+ item.insertAdjacentHTML('beforeend', ``);
+ item.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name, this.dataset.userid, false)}
}
}
document.addEventListener('DOMNodeInserted', blockUsers); // 监听插入事件
@@ -382,32 +387,73 @@ function blockUsers(type) {
function blockUsers_button_people() {
let item = document.querySelector('.MemberButtonGroup.ProfileButtonGroup.ProfileHeader-buttons'), // 获取按钮元素位置
name = document.querySelector('.ProfileHeader-name').firstChild.textContent, // 获取用户名
- users = menu_value('menu_customBlockUsers'); // 读取屏蔽列表
+ users = menu_value('menu_customBlockUsers'), // 读取屏蔽列表
+ userid = location.href.split('/')[4];
for (let num = 0;num已屏蔽`);
+ if (users[num] === name) { // 已存在
+ document.querySelectorAll('.Button.Button--primary.Button--red').forEach(function(item){item.style.display = 'none';}) // 隐藏知乎自带的已屏蔽按钮
+ item.insertAdjacentHTML('beforeend', ``);
+ item.lastElementChild.onclick = function(){blockUsers_button_del(this.dataset.name, this.dataset.userid, true)}
return
}
};
if (item) {
- item.insertAdjacentHTML('beforeend', ``);
- item.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name)}
+ item.insertAdjacentHTML('beforeend', ``);
+ item.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name, this.dataset.userid, true)}
}
}
- // 屏蔽用户按钮绑定事件
- function blockUsers_button_add(name) {
- if (!name) return
+ // 屏蔽用户按钮绑定事件(添加)
+ function blockUsers_button_add(name, userid, reload) {
+ if (!name || !userid) return
let users = menu_value('menu_customBlockUsers'); // 读取屏蔽列表
for (let num = 0;num
Date: Sat, 24 Jul 2021 15:33:43 +0800
Subject: [PATCH 0029/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Zhihu-Enhanced.user.js | 70 ++++++++++++++++++------------------------
1 file changed, 30 insertions(+), 40 deletions(-)
diff --git a/Zhihu-Enhanced.user.js b/Zhihu-Enhanced.user.js
index a53d230d4..18bd8a6fe 100644
--- a/Zhihu-Enhanced.user.js
+++ b/Zhihu-Enhanced.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 知乎增强
-// @version 1.4.8
+// @version 1.4.9
// @author X.I.U
-// @description 移除登录弹窗、一键收起回答、收起当前回答/评论(点击两侧空白处)、快捷回到顶部(右键两侧空白处)、屏蔽指定用户、屏蔽指定关键词(标题)、屏蔽盐选内容、置顶显示时间、显示问题时间、区分问题文章、默认高清原图、默认站外直链
+// @description 移除登录弹窗、一键收起回答、收起当前回答/评论(点击两侧空白处)、快捷回到顶部(右键两侧空白处)、屏蔽用户 (发布的内容)、屏蔽关键词(标题)、屏蔽盐选内容、置顶显示时间、显示问题时间、区分问题文章、默认高清原图、默认站外直链
// @match *://www.zhihu.com/*
// @match *://zhuanlan.zhihu.com/*
// @icon https://static.zhihu.com/heifetz/favicon.ico
@@ -406,26 +406,21 @@ function blockUsers(type) {
// 屏蔽用户按钮绑定事件(添加)
function blockUsers_button_add(name, userid, reload) {
if (!name || !userid) return
- let users = menu_value('menu_customBlockUsers'); // 读取屏蔽列表
- for (let num = 0;num -1) {
+ users.splice(index, 1); // 移除用户名
+ GM_setValue('menu_customBlockUsers', users); // 写入屏蔽列表
+ // 移除知乎自带的黑名单
+ GM_xmlhttpRequest({url: `https://www.zhihu.com/api/v4/members/${userid}/actions/block`,method: 'DELETE',timeout: 2000});
+ // 是否刷新本页
+ if (reload) {
+ setTimeout(function(){location.reload()}, 200); // 刷新网页,延迟 200 毫秒,避免知乎反应慢~
+ } else {
+ GM_notification({text: `该用户已取消屏蔽啦~\n刷新网页后生效~`, timeout: 3000});
}
- };
- GM_notification({text: `没有在屏蔽列表中找到该用户...`, timeout: 3000});
+ } else {
+ GM_notification({text: `没有在屏蔽列表中找到该用户...`, timeout: 3000});
+ }
}
}
From f81a94c987575e13d773df02925f1f531f0d904f Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 24 Jul 2021 16:06:01 +0800
Subject: [PATCH 0030/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DarkMode.user.js | 21 +++++++--------------
1 file changed, 7 insertions(+), 14 deletions(-)
diff --git a/DarkMode.user.js b/DarkMode.user.js
index d9d2d85b8..270cfcb7a 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 护眼模式
-// @version 1.2.1
+// @version 1.2.2
// @author X.I.U
// @description 简单有效的全网通用护眼模式、夜间模式、暗黑模式
// @match *://*/*
@@ -12,6 +12,7 @@
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
// @grant GM_registerMenuCommand
// @grant GM_unregisterMenuCommand
+// @grant GM_openInTab
// @grant GM_getValue
// @grant GM_setValue
// @grant GM_notification
@@ -161,12 +162,8 @@
function check() { // 存在返回真,不存在返回假
let websiteList = menu_value('menu_forcedToEnable'); // 读取网站列表
- for (let num = 0;num
Date: Sat, 24 Jul 2021 16:07:10 +0800
Subject: [PATCH 0031/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20=E6=94=AF?=
=?UTF-8?q?=E6=8C=81=E6=89=80=E6=9C=89=20Discuz!=E8=AE=BA=E5=9D=9B;=20?=
=?UTF-8?q?=E6=96=B0=E5=A2=9E=20=E5=AF=B9=E5=BD=93=E5=89=8D=E7=BD=91?=
=?UTF-8?q?=E7=AB=99=E5=90=AF=E7=94=A8/=E7=A6=81=E7=94=A8=E8=87=AA?=
=?UTF-8?q?=E5=8A=A8=E6=97=A0=E7=BC=9D=E7=BF=BB=E9=A1=B5=E7=9A=84=E8=84=9A?=
=?UTF-8?q?=E6=9C=AC=E5=BC=80=E5=85=B3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 194 +++++++++++++++++++++++++++--------------------
1 file changed, 112 insertions(+), 82 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 83db4564c..fba788e4a 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,34 +1,17 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.2.6
+// @version 1.3.0
// @author X.I.U
-// @description 自动无缝翻页,目前支持:423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、3DM、游民星空、千图网、RARBG、FitGirl Repacks、AlphaCoders、PubMed、三国杀论坛、百分浏览器论坛...
-// @match *://www.423down.com/*
+// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、3DM游戏网、游民星空、千图网、RARBG、FitGirl Repacks、AlphaCoders、PubMed...
+// @match *://*/*
// @exclude *://www.423down.com/*.html
-// @match *://apphot.cc/*
// @exclude *://apphot.cc/*.html
-// @match *://iao.su/*
-// @match *://www.appinn.com/
-// @match *://www.appinn.com/*/*/
-// @match *://www.appinn.com/?s=*
-// @match *://www.iplaysoft.com/*
-// @match *://www.weidown.com/*
-// @match *://fitgirl-repacks.site/*
-// @match *://*.alphacoders.com/*
-// @match *://club.sanguosha.com/*
-// @match *://www.centbrowser.net/*
-// @match *://pubmed.ncbi.nlm.nih.gov/?term=*
-// @match *://movie.douban.com/*
-// @match *://search.douban.com/*
-// @match *://www.3dmgame.com/bagua/*.html
-// @match *://www.gamersky.com/ent/*/*.shtml
-// @match *://www.58pic.com/*
-// @match *://rarbgprx.org/torrents.php*
-// @match *://www.yxssp.com/*
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
// @grant GM_xmlhttpRequest
// @grant GM_registerMenuCommand
// @grant GM_openInTab
+// @grant GM_getValue
+// @grant GM_setValue
// @license GPL-3.0 License
// @run-at document-end
// @namespace https://github.com/XIU2/UserScript
@@ -36,9 +19,16 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
-'use strict';
(function() {
+ 'use strict';
+ if (GM_getValue('menu_disable') == null){GM_setValue('menu_disable', [])};
// 注册脚本菜单
+ if (menu_disable('check')) { // 当前网站是否已存在禁用列表中
+ GM_registerMenuCommand('❎ 已禁用 (点击对当前网站启用)', function(){menu_disable('del')});
+ return
+ } else {
+ GM_registerMenuCommand('✅ 已启用 (点击对当前网站禁用)', function(){menu_disable('add')});
+ }
GM_registerMenuCommand('💬 反馈 & 欢迎申请支持', function () {window.GM_openInTab('https://github.com/XIU2/UserScript#xiu2userscript', {active: true,insert: true,setParent: true});window.GM_openInTab('https://greasyfork.org/zh-CN/scripts/419215/feedback', {active: true,insert: true,setParent: true});});
// 默认 ID 为 0
@@ -50,8 +40,39 @@
// scrollDelta:数值越大,滚动条触发点越靠上(越早开始翻页),一般是访问网页速度越慢,该值就需要越大
// function:before = 插入前执行函数;after = 插入后执行函数;parameter = 参数
let DBSite = {
- _423down_postslist: {
+ discuz_forum: {
SiteTypeID: 1,
+ pager: {
+ type: 2,
+ nextLink: '#autopbn',
+ nextText: '下一页 »',
+ scrollDelta: 1000
+ }
+ },
+ discuz_thread: {
+ SiteTypeID: 2,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;div#postlist > div[id^="post_"]',
+ HT_insert: ['css;div#postlist', 3],
+ replaceE: 'css;div.pg',
+ scrollDelta: 1000
+ }
+ },
+ discuz_search: {
+ SiteTypeID: 3,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;div#threadlist > ul',
+ HT_insert: ['css;div#threadlist', 3],
+ replaceE: 'css;div.pg',
+ scrollDelta: 1000
+ }
+ },
+ _423down_postslist: {
+ SiteTypeID: 4,
pager: {
type: 1,
nextLink: '//div[@class="paging"]//a[contains(text(),"下一页")][@href]',
@@ -62,7 +83,7 @@
}
},
apphot_postslist: {
- SiteTypeID: 2,
+ SiteTypeID: 5,
pager: {
type: 1,
nextLink: '//div[@class="pagination"]//a[contains(text(),"下一页")][@href]',
@@ -73,7 +94,7 @@
}
},
iao_su_postslist: {
- SiteTypeID: 3,
+ SiteTypeID: 6,
pager: {
type: 1,
nextLink: '//li[@class="btn btn-primary next"]//a[@href]',
@@ -87,7 +108,7 @@
}
},
appinn_postslist: {
- SiteTypeID: 4,
+ SiteTypeID: 7,
pager: {
type: 1,
nextLink: '//a[@class="next page-numbers"][@href]',
@@ -98,7 +119,7 @@
}
},
iplaysoft_postslist: {
- SiteTypeID: 5,
+ SiteTypeID: 8,
pager: {
type: 1,
nextLink: '//div[@class="pagenavi"]//a[@title="下一页"][@href]',
@@ -112,7 +133,7 @@
}
},
iplaysoft_postcomments: {
- SiteTypeID: 6,
+ SiteTypeID: 9,
pager: {
type: 2,
nextLink: '#loadHistoryComments',
@@ -120,37 +141,6 @@
scrollDelta: 1200
}
},
- discuz_forum: {
- SiteTypeID: 7,
- pager: {
- type: 2,
- nextLink: '#autopbn',
- nextText: '下一页 »',
- scrollDelta: 1000
- }
- },
- discuz_thread: {
- SiteTypeID: 8,
- pager: {
- type: 1,
- nextLink: '//a[@class="nxt"][@href]',
- pageElement: 'css;div#postlist > div[id^="post_"]',
- HT_insert: ['css;div#postlist', 3],
- replaceE: 'css;div.pg',
- scrollDelta: 1000
- }
- },
- discuz_search: {
- SiteTypeID: 9,
- pager: {
- type: 1,
- nextLink: '//a[@class="nxt"][@href]',
- pageElement: 'css;div#threadlist > ul',
- HT_insert: ['css;div#threadlist', 3],
- replaceE: 'css;div.pg',
- scrollDelta: 1000
- }
- },
pubmed_postslist: {
SiteTypeID: 10,
pager: {
@@ -392,28 +382,6 @@
case "mobile.alphacoders.com":
curSite = DBSite.wall_alphacoders;
break;
- case "club.sanguosha.com": // Discuz! 论坛专用
- case "www.centbrowser.net":
- if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
- if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
- curSite = DBSite.discuz_forum;
- } else if (location.pathname.indexOf('thread') > -1) { // 帖子内
- curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
- }else if(location.pathname.indexOf('search') > -1) { // 搜索结果
- curSite = DBSite.discuz_search;
- }
- } else {
- if (location.search.indexOf('mod=forumdisplay') > -1) { // 各版块帖子列表
- curSite = DBSite.discuz_forum;
- } else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内
- curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
- } else if (location.pathname.indexOf('search') > -1) { // 搜索结果
- curSite = DBSite.discuz_search;
- }
- }
- break;
case "pubmed.ncbi.nlm.nih.gov":
curSite = DBSite.pubmed_postslist;
break;
@@ -447,6 +415,28 @@
case "rarbgprx.org":
curSite = DBSite.rarbgprx;
break;
+ default: // < Discuz! 论坛专用 >
+ if (document.querySelector('meta[content*="Discuz!"]')) {
+ if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
+ if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
+ curSite = DBSite.discuz_forum;
+ } else if (location.pathname.indexOf('thread') > -1) { // 帖子内
+ curSite = DBSite.discuz_thread;
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ }else if(location.pathname.indexOf('search') > -1) { // 搜索结果
+ curSite = DBSite.discuz_search;
+ }
+ } else {
+ if (location.search.indexOf('mod=forumdisplay') > -1) { // 各版块帖子列表
+ curSite = DBSite.discuz_forum;
+ } else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内
+ curSite = DBSite.discuz_thread;
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ } else if (location.pathname.indexOf('search') > -1) { // 搜索结果
+ curSite = DBSite.discuz_search;
+ }
+ }
+ }
}
curSite.pageUrl = ""; // 下一页URL
pageLoading(); // 自动无缝翻页
@@ -549,6 +539,46 @@
}
+ // 启用/禁用 (当前网站)
+ function menu_disable(type) {
+ switch(type) {
+ case 'check':
+ if(check()) return true
+ return false
+ break;
+ case 'add':
+ add();
+ break;
+ case 'del':
+ del();
+ break;
+ }
+
+ function check() { // 存在返回真,不存在返回假
+ let websiteList = GM_getValue('menu_disable'); // 读取网站列表
+ if (websiteList.indexOf(location.host) === -1) return false // 不存在返回假
+ return true
+ }
+
+ function add() {
+ if (check()) return
+ let websiteList = GM_getValue('menu_disable'); // 读取网站列表
+ websiteList.push(location.host); // 追加网站域名
+ GM_setValue('menu_disable', websiteList); // 写入配置
+ location.reload(); // 刷新网页
+ }
+
+ function del() {
+ if (!check()) return
+ let websiteList = GM_getValue('menu_disable'), // 读取网站列表
+ index = websiteList.indexOf(location.host);
+ websiteList.splice(index, 1); // 删除网站域名
+ GM_setValue('menu_disable', websiteList); // 写入配置
+ location.reload(); // 刷新网页
+ }
+ }
+
+
// 滚动条事件
function windowScroll(fn1) {
var beforeScrollTop = document.documentElement.scrollTop,
From 40df0ef30829ac190932ef78c902bdc8b1df9900 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 24 Jul 2021 16:13:59 +0800
Subject: [PATCH 0032/2070] README.md
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 69de3f2e9..7521ae615 100644
--- a/README.md
+++ b/README.md
@@ -22,7 +22,7 @@
| [
](https://www.zhihu.com/people/xiu2) | **知乎 增强** | **移除登录弹窗**、一键收起回答、屏蔽用户、屏蔽关键词(标题)... | **[安装](https://greasyfork.org/zh-CN/scripts/419081)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhihu-Enhanced.user.js)** |
| [
](https://www.v2ex.com/) | **V2ex 增强** | **自动签到**、链接转图片、自动无缝翻页、新标签页打开链接... | **[安装](https://greasyfork.org/zh-CN/scripts/424246)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/V2ex-Enhanced.user.js)** |
| [
](https://github.com/XIU2) | **Github 增强** | **高速下载** Git Clone/SSH、Release、Raw、Code(ZIP) 文件... | **[安装](https://greasyfork.org/zh-CN/scripts/412245)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/GithubEnhanced-High-Speed-Download.user.js)** |
-| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | 423Down、Apphot、不死鸟、小众软件、异次元软件... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
+| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | **所有 Discuz!论坛**、423Down、不死鸟、小众软件、异次... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/413593)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Beautification.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 增强** | **自动回复**、自动无缝翻页、清理置顶帖子、自动滚动至隐藏... | **[安装](https://greasyfork.org/zh-CN/scripts/412890)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Enhanced.user.js)** |
| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 美化** | 精简多余内容、样式优化、宽屏显示 | **[安装](https://greasyfork.org/zh-CN/scripts/412361)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Beautification.user.js)** |
From c24fb3736aad1e1f26dd68dea821741171ad44c0 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 24 Jul 2021 16:36:37 +0800
Subject: [PATCH 0033/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 81 ++++++++++++++++++++++++++++++------------------
1 file changed, 51 insertions(+), 30 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index fba788e4a..d73a4df0c 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.3.0
+// @version 1.3.1
// @author X.I.U
// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、3DM游戏网、游民星空、千图网、RARBG、FitGirl Repacks、AlphaCoders、PubMed...
// @match *://*/*
@@ -21,13 +21,36 @@
(function() {
'use strict';
+ // 目前支持的网站
+ var websiteList = ['www.423down.com',
+ 'apphot.cc',
+ 'iao.su',
+ 'www.appinn.com',
+ 'www.iplaysoft.com',
+ 'www.weidown.com',
+ 'fitgirl-repacks.site',
+ 'art.alphacoders.com', 'wall.alphacoders.com', 'avatars.alphacoders.com', 'mobile.alphacoders.com',
+ 'pubmed.ncbi.nlm.nih.gov',
+ 'movie.douban.com',
+ 'search.douban.com',
+ 'www.3dmgame.com',
+ 'www.gamersky.com',
+ 'www.58pic.com',
+ 'rarbgprx.org',
+ 'www.yxssp.com'];
+
if (GM_getValue('menu_disable') == null){GM_setValue('menu_disable', [])};
// 注册脚本菜单
if (menu_disable('check')) { // 当前网站是否已存在禁用列表中
GM_registerMenuCommand('❎ 已禁用 (点击对当前网站启用)', function(){menu_disable('del')});
return
} else {
- GM_registerMenuCommand('✅ 已启用 (点击对当前网站禁用)', function(){menu_disable('add')});
+ if (websiteList.indexOf(location.host) > -1 || document.querySelector('meta[name="author"][content*="Discuz!"]')) {
+ GM_registerMenuCommand('✅ 已启用 (点击对当前网站禁用)', function(){menu_disable('add')});
+ } else {
+
+ GM_registerMenuCommand('❌ 当前网站暂不支持,请点击下方选项申请支持~');
+ }
}
GM_registerMenuCommand('💬 反馈 & 欢迎申请支持', function () {window.GM_openInTab('https://github.com/XIU2/UserScript#xiu2userscript', {active: true,insert: true,setParent: true});window.GM_openInTab('https://greasyfork.org/zh-CN/scripts/419215/feedback', {active: true,insert: true,setParent: true});});
@@ -416,25 +439,23 @@
curSite = DBSite.rarbgprx;
break;
default: // < Discuz! 论坛专用 >
- if (document.querySelector('meta[content*="Discuz!"]')) {
- if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
- if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
- curSite = DBSite.discuz_forum;
- } else if (location.pathname.indexOf('thread') > -1) { // 帖子内
- curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
- }else if(location.pathname.indexOf('search') > -1) { // 搜索结果
- curSite = DBSite.discuz_search;
- }
- } else {
- if (location.search.indexOf('mod=forumdisplay') > -1) { // 各版块帖子列表
- curSite = DBSite.discuz_forum;
- } else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内
- curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
- } else if (location.pathname.indexOf('search') > -1) { // 搜索结果
- curSite = DBSite.discuz_search;
- }
+ if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
+ if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
+ curSite = DBSite.discuz_forum;
+ } else if (location.pathname.indexOf('thread') > -1) { // 帖子内
+ curSite = DBSite.discuz_thread;
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ }else if(location.pathname.indexOf('search') > -1) { // 搜索结果
+ curSite = DBSite.discuz_search;
+ }
+ } else {
+ if (location.search.indexOf('mod=forumdisplay') > -1) { // 各版块帖子列表
+ curSite = DBSite.discuz_forum;
+ } else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内
+ curSite = DBSite.discuz_thread;
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ } else if (location.pathname.indexOf('search') > -1) { // 搜索结果
+ curSite = DBSite.discuz_search;
}
}
}
@@ -555,25 +576,25 @@
}
function check() { // 存在返回真,不存在返回假
- let websiteList = GM_getValue('menu_disable'); // 读取网站列表
- if (websiteList.indexOf(location.host) === -1) return false // 不存在返回假
+ let list = GM_getValue('menu_disable'); // 读取网站列表
+ if (list.indexOf(location.host) === -1) return false // 不存在返回假
return true
}
function add() {
if (check()) return
- let websiteList = GM_getValue('menu_disable'); // 读取网站列表
- websiteList.push(location.host); // 追加网站域名
- GM_setValue('menu_disable', websiteList); // 写入配置
+ let list = GM_getValue('menu_disable'); // 读取网站列表
+ list.push(location.host); // 追加网站域名
+ GM_setValue('menu_disable', list); // 写入配置
location.reload(); // 刷新网页
}
function del() {
if (!check()) return
- let websiteList = GM_getValue('menu_disable'), // 读取网站列表
- index = websiteList.indexOf(location.host);
- websiteList.splice(index, 1); // 删除网站域名
- GM_setValue('menu_disable', websiteList); // 写入配置
+ let list = GM_getValue('menu_disable'), // 读取网站列表
+ index = list.indexOf(location.host);
+ list.splice(index, 1); // 删除网站域名
+ GM_setValue('menu_disable', list); // 写入配置
location.reload(); // 刷新网页
}
}
From ec50801a1b0626eedf67ed0f5693918053706477 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 24 Jul 2021 21:31:02 +0800
Subject: [PATCH 0034/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E6=B8=B8?=
=?UTF-8?q?=E4=BE=A0=E7=BD=91]=20=E6=94=AF=E6=8C=81;=20=E4=BC=98=E5=8C=96?=
=?UTF-8?q?=20[3DM=E6=B8=B8=E6=88=8F=E7=BD=91=E3=80=81=E6=B8=B8=E6=B0=91?=
=?UTF-8?q?=E6=98=9F=E7=A9=BA]=20=E8=A7=84=E5=88=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 146 ++++++++++++++++++++++++++++++++++++-----------
1 file changed, 113 insertions(+), 33 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index d73a4df0c..badc2a264 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,11 +1,12 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.3.1
+// @version 1.3.2
// @author X.I.U
// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、3DM游戏网、游民星空、千图网、RARBG、FitGirl Repacks、AlphaCoders、PubMed...
// @match *://*/*
// @exclude *://www.423down.com/*.html
// @exclude *://apphot.cc/*.html
+// @connect www.gamersky.com
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
// @grant GM_xmlhttpRequest
// @grant GM_registerMenuCommand
@@ -35,6 +36,7 @@
'search.douban.com',
'www.3dmgame.com',
'www.gamersky.com',
+ 'www.ali213.net',
'www.58pic.com',
'rarbgprx.org',
'www.yxssp.com'];
@@ -57,11 +59,23 @@
// 默认 ID 为 0
var curSite = {SiteTypeID: 0};
- // 自动翻页规则
- // type:1 = 脚本实现自动无缝翻页,2 = 网站自带了自动无缝翻页功能,只需要点击下一页按钮即可,这时 nextText 为按钮文本,避免一瞬间加载太多次下一页
- // HT_insert:1 = 插入该元素本身的前面;2 = 插入该元素当中,第一个子元素前面;3 = 插入该元素当中,最后一个子元素后面;4 = 插入该元素本身的后面;
- // scrollDelta:数值越大,滚动条触发点越靠上(越早开始翻页),一般是访问网页速度越慢,该值就需要越大
- // function:before = 插入前执行函数;after = 插入后执行函数;parameter = 参数
+ /*
+ 自动翻页规则
+ type:
+ 1 = 脚本实现自动无缝翻页
+ 2 = 网站自带了自动无缝翻页功能,只需要点击下一页按钮即可,这时 nextText 为按钮文本,避免一瞬间加载太多次下一页
+ 3 = 依靠元素距离可视区域底部的距离来触发翻页
+ HT_insert:
+ 1 = 插入该元素本身的前面;
+ 2 = 插入该元素当中,第一个子元素前面;
+ 3 = 插入该元素当中,最后一个子元素后面;
+ 4 = 插入该元素本身的后面;
+ scrollDelta:数值越大,滚动条触发点越靠上(越早开始翻页),一般是访问网页速度越慢,该值就需要越大
+ function:
+ before = 插入前执行函数;
+ after = 插入后执行函数;
+ parameter = 参数
+ */
let DBSite = {
discuz_forum: {
SiteTypeID: 1,
@@ -289,27 +303,65 @@
_3dmgame: {
SiteTypeID: 19,
pager: {
- type: 1,
+ type: 3,
nextLink: '//li[@class="next"]/a[@href]',
- pageElement: 'css;.news_warp_center > p',
+ pageElement: 'css;.news_warp_center > *',
HT_insert: ['css;.news_warp_center', 3],
replaceE: 'css;.pagewrap',
- scrollDelta: 1000
+ scrollElement: '.pagewrap',
+ scrollDelta: 400
}
},
- gamersky: {
+ gamersky_ent: {
SiteTypeID: 20,
pager: {
- type: 1,
+ type: 3,
nextLink: '//div[@class="page_css"]/a[text()="下一页"][@href]',
- pageElement: 'css;.Mid2L_con > p',
+ pageElement: 'css;.Mid2L_con > *:not(.gs_nc_editor):not(.pagecss):not(.page_css):not(.gs_ccs_solve):not(.post_ding)',
HT_insert: ['css;.page_css', 1],
replaceE: 'css;.page_css',
- scrollDelta: 1000
+ scrollElement: '.page_css',
+ scrollDelta: 100
}
},
- _58pic: {
+ gamersky_gl: {
SiteTypeID: 21,
+ pager: {
+ type: 3,
+ nextLink: '//div[@class="page_css"]/a[text()="下一页"][@href]',
+ pageElement: 'css;.Mid2L_con > *:not(.gs_nc_editor):not(.pagecss):not(.gs_ccs_solve):not(.post_ding)',
+ HT_insert: ['css;.gs_nc_editor', 1],
+ replaceE: 'css;.page_css',
+ scrollElement: '.pagecss',
+ scrollDelta: -1000
+ }
+ },
+ ali213_www: {
+ SiteTypeID: 22,
+ pager: {
+ type: 3,
+ nextLink: '//a[@id="after_this_page"][@href]',
+ pageElement: 'css;#Content >*:not(.news_ding):not(.page_fenye)',
+ HT_insert: ['css;.page_fenye', 1],
+ replaceE: 'css;.page_fenye',
+ scrollElement: '.page_fenye',
+ scrollDelta: 400
+ }
+ },
+ ali213_gl: {
+ SiteTypeID: 23,
+ pager: {
+ type: 3,
+ nextLink: '//a[@class="next n"][@href]',
+ pageElement: 'css;.c-detail >*',
+ HT_insert: ['css;.c-detail', 3],
+ replaceE: 'css;.page_fenye',
+ scrollElement: '.page_fenye',
+ scrollDelta: 400
+ }
+ },
+ _58pic: {
+ SiteTypeID: 24,
pager: {
type: 1,
nextLink: '//div[contains(@class,"page-box")]//a[text()="下一页"][@href]',
@@ -323,7 +375,7 @@
}
},
_58pic_c: {
- SiteTypeID: 22,
+ SiteTypeID: 25,
pager: {
type: 1,
nextLink: '//div[contains(@class,"page-box")]//a[text()="下一页"][@href]',
@@ -337,7 +389,7 @@
}
},
rarbgprx: {
- SiteTypeID: 23,
+ SiteTypeID: 26,
pager: {
type: 1,
nextLink: '(//a[@title="next page"])[1][@href]',
@@ -348,7 +400,7 @@
}
},
yxssp: {
- SiteTypeID: 24,
+ SiteTypeID: 27,
pager: {
type: 1,
nextLink: '//div[@class="page-nav td-pb-padding-side"]/a[last()][@href]',
@@ -422,11 +474,21 @@
break;
case "www.3dmgame.com":
curSite = DBSite._3dmgame;
- document.lastChild.appendChild(document.createElement('style')).textContent = `#Comments_wrap {display: none !important;}` // 隐藏评论区
break;
case "www.gamersky.com":
- curSite = DBSite.gamersky;
- document.lastElementChild.appendChild(document.createElement('style')).textContent = `.Comment {display: none !important;}` // 隐藏评论区
+ if (location.pathname.indexOf("/ent/") > -1) {
+ curSite = DBSite.gamersky_ent;
+ } else {
+ curSite = DBSite.gamersky_gl;
+ }
+ //document.lastElementChild.appendChild(document.createElement('style')).textContent = `.Comment {display: none !important;}` // 隐藏评论区
+ break;
+ case "www.ali213.net":
+ curSite = DBSite.ali213_www;
+ break;
+ case "gl.ali213.net":
+ curSite = DBSite.ali213_gl;
+ document.lastElementChild.appendChild(document.createElement('style')).textContent = `.n_show_b {display: none !important;}` // 隐藏部分碍事元素
break;
case "www.58pic.com":
if (location.pathname.indexOf("/tupian/") > -1) {
@@ -468,19 +530,29 @@
if (curSite.SiteTypeID > 0) {
windowScroll(function (direction, e) {
if (direction === "down") { // 下滑才准备翻页
- let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
- let scrollDelta = curSite.pager.scrollDelta;
- if (document.documentElement.scrollHeight <= document.documentElement.clientHeight + scrollTop + scrollDelta) {
- if (curSite.pager.type === 1) {
+ let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop,
+ scrollHeight = window.innerHeight || document.documentElement.clientHeight,
+ scrollDelta = curSite.pager.scrollDelta;
+ if (curSite.pager.type === 3) { // 翻页类型 3
+ let scrollElement = document.querySelector(curSite.pager.scrollElement);
+ //console.log(scrollElement.offsetTop - (scrollTop + scrollHeight), scrollDelta, curSite.SiteTypeID)
+ if (scrollElement.offsetTop - (scrollTop + scrollHeight) <= scrollDelta) {
+ if (curSite.SiteTypeID === 21) curSite.pager.scrollDelta -= 800 // 游民星空的比较奇葩,需要特殊处理下
ShowPager.loadMorePage();
- } else {
- let autopbn = document.querySelector(curSite.pager.nextLink);
- if (autopbn) { // 如果正在加载,就不再点击
- if (!curSite.pager.nextText) { // 如果没有指定 nextText 就直接点击
- autopbn.click();
- } else if (autopbn.innerText.indexOf(curSite.pager.nextText) > -1){ // 如果指定了 nextText 就需要判断后再点击(避免已经在加载了,还重复点击)
- autopbn.click();
+ }
+ } else {
+ if (document.documentElement.scrollHeight <= scrollHeight + scrollTop + scrollDelta) {
+ if (curSite.pager.type === 2) { // 翻页类型 2
+ let autopbn = document.querySelector(curSite.pager.nextLink);
+ if (autopbn) { // 如果正在加载,就不再点击
+ if (!curSite.pager.nextText) { // 如果没有指定 nextText 就直接点击
+ autopbn.click();
+ } else if (autopbn.innerText.indexOf(curSite.pager.nextText) > -1){ // 如果指定了 nextText 就需要判断后再点击(避免已经在加载了,还重复点击)
+ autopbn.click();
+ }
}
+ } else {
+ ShowPager.loadMorePage();
}
}
}
@@ -490,6 +562,14 @@
}
+ function getElementToPageTop(el) {
+ if(el.parentElement) {
+ return getElementToPageTop(el.parentElement) + el.offsetTop
+ }
+ return el.offsetTop
+ }
+
+
// 隐藏帖子内的 [下一页] 按钮
function hidePgbtn() {
let style_hidePgbtn = document.createElement('style');
@@ -658,8 +738,8 @@
let curPageEle = getElementByXpath(curSite.pager.nextLink);
var url = this.getFullHref(curPageEle);
//console.log(`${url} ${curPageEle} ${curSite.pageUrl}`);
- if(url === '') return;
- if(curSite.pageUrl === url) return;// 避免重复加载相同的页面
+ if (url === '') return;
+ if (curSite.pageUrl === url) return;// 避免重复加载相同的页面
curSite.pageUrl = url;
// 读取下一页的数据
curSite.pager.startFilter && curSite.pager.startFilter();
From 827ff1517f5dd8d556ab43691358be50a654a938 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 24 Jul 2021 21:31:41 +0800
Subject: [PATCH 0035/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E6=B8=B8?=
=?UTF-8?q?=E4=BE=A0=E7=BD=91]=20=E6=94=AF=E6=8C=81;=20=E4=BC=98=E5=8C=96?=
=?UTF-8?q?=20[3DM=E6=B8=B8=E6=88=8F=E7=BD=91=E3=80=81=E6=B8=B8=E6=B0=91?=
=?UTF-8?q?=E6=98=9F=E7=A9=BA]=20=E8=A7=84=E5=88=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index badc2a264..a371c1c87 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -2,7 +2,7 @@
// @name 自动无缝翻页
// @version 1.3.2
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、3DM游戏网、游民星空、千图网、RARBG、FitGirl Repacks、AlphaCoders、PubMed...
+// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、3DM游戏网、游侠网、游民星空、千图网、RARBG、FitGirl Repacks、AlphaCoders、PubMed...
// @match *://*/*
// @exclude *://www.423down.com/*.html
// @exclude *://apphot.cc/*.html
From 90dcf2982e7323fe6a2ee22016e43150dcfce238 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 24 Jul 2021 21:33:27 +0800
Subject: [PATCH 0036/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E6=B8=B8?=
=?UTF-8?q?=E4=BE=A0=E7=BD=91]=20=E6=94=AF=E6=8C=81;=20=E4=BC=98=E5=8C=96?=
=?UTF-8?q?=20[3DM=E6=B8=B8=E6=88=8F=E7=BD=91=E3=80=81=E6=B8=B8=E6=B0=91?=
=?UTF-8?q?=E6=98=9F=E7=A9=BA]=20=E8=A7=84=E5=88=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 1 +
1 file changed, 1 insertion(+)
diff --git a/Autopage.user.js b/Autopage.user.js
index a371c1c87..b8e4dd5de 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -37,6 +37,7 @@
'www.3dmgame.com',
'www.gamersky.com',
'www.ali213.net',
+ 'gl.ali213.net',
'www.58pic.com',
'rarbgprx.org',
'www.yxssp.com'];
From 46bc418d2b4b4ef1506dc44032a383273f9fd530 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Tue, 27 Jul 2021 07:10:28 +0800
Subject: [PATCH 0037/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=B1=95?=
=?UTF-8?q?=E5=BC=80=E9=97=AE=E9=A2=98=E6=8F=8F=E8=BF=B0]=20=E5=8A=9F?=
=?UTF-8?q?=E8=83=BD=EF=BC=88=E9=BB=98=E8=AE=A4=E5=85=B3=E9=97=AD=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Zhihu-Enhanced.user.js | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/Zhihu-Enhanced.user.js b/Zhihu-Enhanced.user.js
index 18bd8a6fe..28d0a1f78 100644
--- a/Zhihu-Enhanced.user.js
+++ b/Zhihu-Enhanced.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 知乎增强
-// @version 1.4.9
+// @version 1.5.0
// @author X.I.U
-// @description 移除登录弹窗、一键收起回答、收起当前回答/评论(点击两侧空白处)、快捷回到顶部(右键两侧空白处)、屏蔽用户 (发布的内容)、屏蔽关键词(标题)、屏蔽盐选内容、置顶显示时间、显示问题时间、区分问题文章、默认高清原图、默认站外直链
+// @description 移除登录弹窗、一键收起回答、收起当前回答/评论(点击两侧空白处)、快捷回到顶部(右键两侧空白处)、屏蔽用户 (发布的内容)、屏蔽关键词(标题)、屏蔽盐选内容、展开问题描述、置顶显示时间、显示问题时间、区分问题文章、默认高清原图、默认站外直链
// @match *://www.zhihu.com/*
// @match *://zhuanlan.zhihu.com/*
// @icon https://static.zhihu.com/heifetz/favicon.ico
@@ -30,6 +30,7 @@ var menu_ALL = [
['menu_blockKeywords', '屏蔽指定关键词', '屏蔽指定关键词', false],
['menu_customBlockKeywords', '自定义屏蔽关键词', '自定义屏蔽关键词', []],
['menu_blockYanXuan', '屏蔽盐选内容', '屏蔽盐选内容', false],
+ ['menu_questionRichTextMore', '展开问题描述', '展开问题描述', false],
['menu_publishTop', '置顶显示时间', '置顶显示时间', true],
['menu_allTime', '完整显示时间', '完整显示时间', true],
['menu_typeTips', '区分问题文章', '区分问题文章', true],
@@ -688,6 +689,16 @@ function addTypeTips() {
}
+// 展开问题描述
+function questionRichTextMore() {
+ if (!menu_value('menu_questionRichTextMore')) return
+ let button = document.querySelector('button.QuestionRichText-more');
+ if (button) {
+ button.click()
+ }
+}
+
+
// 监听 网页插入元素 事件
function addEventListener_DOMNodeInserted() {
// 知乎免登录,修改自:https://greasyfork.org/zh-CN/scripts/417126
@@ -993,6 +1004,7 @@ function questionInvitation(){
collapsedAnswer(); // 一键收起回答
collapsedNowAnswer(".QuestionPage"); // 收起当前回答 + 快捷返回顶部
collapsedNowAnswer(".Question-main"); // 收起当前回答 + 快捷返回顶部
+ questionRichTextMore(); // 展开问题描述
blockUsers('question'); // 屏蔽指定用户
blockYanXuan(); // 屏蔽盐选内容
}
From 19c23bf3fa7c1920117336d05aa42b1ad0d965f4 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Tue, 27 Jul 2021 07:55:34 +0800
Subject: [PATCH 0038/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20[=E6=9A=97?=
=?UTF-8?q?=E9=BB=91=E6=A8=A1=E5=BC=8F=201]=20=E6=94=AF=E6=8C=81=E9=97=AE?=
=?UTF-8?q?=E9=A2=98=E6=97=A5=E5=BF=97=E9=A1=B5=E7=AD=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Zhihu-Beautification.user.js | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
diff --git a/Zhihu-Beautification.user.js b/Zhihu-Beautification.user.js
index 6b10e75fb..d44b2fb2d 100644
--- a/Zhihu-Beautification.user.js
+++ b/Zhihu-Beautification.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 知乎美化
-// @version 1.2.5
+// @version 1.2.6
// @author X.I.U
// @description 宽屏显示、暗黑模式(4种)、隐藏文章开头大图、调整图片最大高度、向下翻时自动隐藏顶栏、文章编辑页面与实际文章宽度一致、屏蔽登录提示
// @match *://www.zhihu.com/*
@@ -189,7 +189,7 @@ html[data-theme=dark] .Highlight em {color: #c33c39 !important;}
/* 背景颜色 - 网页 */
html[data-theme=dark] body, html[data-theme=dark] .Select-option:focus {background: #22272E !important;}
/* 背景颜色 - 问题 */
-html[data-theme=dark] .AppHeader, html[data-theme=dark] .QuestionHeader, html[data-theme=dark] .QuestionHeader-footer, html[data-theme=dark] .EmoticonsFooter-item--selected, html[data-theme=dark] .Card, html[data-theme=dark] .ContentItem-actions, html[data-theme=dark] .MoreAnswers .List-headerText, html[data-theme=dark] .CommentsV2-withPagination, html[data-theme=dark] .Topbar, html[data-theme=dark] .CommentsV2-footer, html[data-theme=dark] .CommentEditorV2-inputWrap--active, html[data-theme=dark] .InputLike, html[data-theme=dark] .Popover-content, html[data-theme=dark] .Notifications-footer, html[data-theme=dark] .Messages-footer, html[data-theme=dark] .Modal-inner, html[data-theme=dark] .Emoticons, html[data-theme=dark] .EmoticonsFooter, html[data-theme=dark] .SearchTabs, html[data-theme=dark] .Popover-arrow:after, html[data-theme=dark] .CommentEditorV2-inputWrap, html[data-theme=dark] .ProfileHeader-wrapper, html[data-theme=dark] .UserCover, html[data-theme=dark] .AnswerForm-footer, html[data-theme=dark] .Editable-toolbar, html[data-theme=dark] .AnswerForm-fullscreenContent .Editable-toolbar, html[data-theme=dark] .KfeCollection-PcCollegeCard-wrapper, html[data-theme=dark] .KfeCollection-PcCollegeCard-root, html[data-theme=dark] .HotItem, html[data-theme=dark] .HotList, html[data-theme=dark] .HotListNavEditPad, html[data-theme=dark] .QuestionWaiting-typesTopper, html[data-theme=dark] .QuestionWaiting-types, html[data-theme=dark] .PostItem, html[data-theme=dark] .ClubSideBar section, html[data-theme=dark] .SearchSubTabs, html[data-theme=dark] .Club-SearchPosts-Content, html[data-theme=dark] .Club-content, html[data-theme=dark] .ClubJoinOrCheckinButton, html[data-theme=dark] .ClubEdit, html[data-theme=dark] .CornerButton, html[data-theme=dark] .Notifications-Section-header, html[data-theme=dark] .NotificationList, .NotificationList-Item.NotificationList-Item:after, .NotificationList-DateSplit.NotificationList-DateSplit:after, html[data-theme=dark] .Chat, .ChatUserListItem:after, .ChatListGroup-SectionTitle--bottomBorder:after, html[data-theme=dark] .ActionMenu, .ChatSideBar-Search--active, html[data-theme=dark] .ChatSideBar-Search-ResultListWrap, html[data-theme=dark] .QuestionMainDivider-inner, html[data-theme=dark] .Topic-bar, html[data-theme=dark] .AnnotationTag, html[data-theme=dark] .HoverCard, html[data-theme=dark] .HoverCard-loading, html[data-theme=dark] .ExploreSpecialCard, html[data-theme=dark] .ExploreHomePage-ContentSection-moreButton a, html[data-theme=dark] .ExploreRoundtableCard, html[data-theme=dark] .ExploreCollectionCard, html[data-theme=dark] .ExploreColumnCard, html[data-theme=dark] .RichText .lazy[data-lazy-status] {background: #2D333B !important;}
+html[data-theme=dark] .AppHeader, html[data-theme=dark] .QuestionHeader, html[data-theme=dark] .QuestionHeader-footer, html[data-theme=dark] .EmoticonsFooter-item--selected, html[data-theme=dark] .Card, html[data-theme=dark] .ContentItem-actions, html[data-theme=dark] .MoreAnswers .List-headerText, html[data-theme=dark] .CommentsV2-withPagination, html[data-theme=dark] .Topbar, html[data-theme=dark] .CommentsV2-footer, html[data-theme=dark] .CommentEditorV2-inputWrap--active, html[data-theme=dark] .InputLike, html[data-theme=dark] .Popover-content, html[data-theme=dark] .Notifications-footer, html[data-theme=dark] .Messages-footer, html[data-theme=dark] .Modal-inner, html[data-theme=dark] .Emoticons, html[data-theme=dark] .EmoticonsFooter, html[data-theme=dark] .SearchTabs, html[data-theme=dark] .Popover-arrow:after, html[data-theme=dark] .CommentEditorV2-inputWrap, html[data-theme=dark] .ProfileHeader-wrapper, html[data-theme=dark] .UserCover, html[data-theme=dark] .AnswerForm-footer, html[data-theme=dark] .Editable-toolbar, html[data-theme=dark] .AnswerForm-fullscreenContent .Editable-toolbar, html[data-theme=dark] .KfeCollection-PcCollegeCard-wrapper, html[data-theme=dark] .KfeCollection-PcCollegeCard-root, html[data-theme=dark] .HotItem, html[data-theme=dark] .HotList, html[data-theme=dark] .HotListNavEditPad, html[data-theme=dark] .QuestionWaiting-typesTopper, html[data-theme=dark] .QuestionWaiting-types, html[data-theme=dark] .PostItem, html[data-theme=dark] .ClubSideBar section, html[data-theme=dark] .SearchSubTabs, html[data-theme=dark] .Club-SearchPosts-Content, html[data-theme=dark] .Club-content, html[data-theme=dark] .ClubJoinOrCheckinButton, html[data-theme=dark] .ClubEdit, html[data-theme=dark] .CornerButton, html[data-theme=dark] .Notifications-Section-header, html[data-theme=dark] .NotificationList, .NotificationList-Item.NotificationList-Item:after, .NotificationList-DateSplit.NotificationList-DateSplit:after, html[data-theme=dark] .Chat, .ChatUserListItem:after, .ChatListGroup-SectionTitle--bottomBorder:after, html[data-theme=dark] .ActionMenu, .ChatSideBar-Search--active, html[data-theme=dark] .ChatSideBar-Search-ResultListWrap, html[data-theme=dark] .QuestionMainDivider-inner, html[data-theme=dark] .Topic-bar, html[data-theme=dark] .AnnotationTag, html[data-theme=dark] .HoverCard, html[data-theme=dark] .HoverCard-loading, html[data-theme=dark] .ExploreSpecialCard, html[data-theme=dark] .ExploreHomePage-ContentSection-moreButton a, html[data-theme=dark] .ExploreRoundtableCard, html[data-theme=dark] .ExploreCollectionCard, html[data-theme=dark] .ExploreColumnCard, html[data-theme=dark] .RichText .lazy[data-lazy-status], html[data-theme=dark] #TopstoryContent > div:first-child {background: #2D333B !important;}
html[data-theme=dark] .CommentListV2-header-divider, html[data-theme=dark] .CommentsV2-openComment-divider, html[data-theme=dark] .AnswerForm-fullscreenScroller, html[data-theme=dark] .HotListNav-item, html[data-theme=dark] .AutoInviteItem-wrapper--desktop, html[data-theme=dark] .ExploreSpecialCard-contentTag, html[data-theme=dark] .ExploreCollectionCard-contentTypeTag, html[data-theme=dark] .Reward-TipjarDialog-tagLine {background-color: #222933 !important;}
html[data-theme=dark] .CornerButton:hover {background: #3f4752 !important;} /* 右下角按钮 */
@@ -269,6 +269,16 @@ html[data-theme=dark] .CommentItemV2--highlighted {-webkit-animation: nano !impo
/* 赞赏 */
html[data-theme=dark] .Reward-TipjarDialog-amountList .Button--red, html[data-theme=dark] .Reward-TipjarDialog-amountList .Button--red, html[data-theme=dark] .Reward-TipjarDialog-amountInput .SimpleInput {color: #d3d3d3 !important; background-color: #353b44 !important; border: none !important;}
+
+/* 问题日志页 */
+html[data-theme=dark] .zu-top {background: #2D333B !important;border: none !important;}
+html[data-theme=dark] .zm-tag-editor-labels.zg-clear a {background: rgba(51,119,255,.1) !important;}
+html[data-theme=dark] .zu-main {background: #2D333B !important;padding-left: 20px;padding-right: 20px;}
+html[data-theme=dark] .zm-item+.zm-item {border-top: 1px solid #424b56;}
+html[data-theme=dark] a {color: #D4E5F4 !important;}
+html[data-theme=dark] ins, html[data-theme=dark] ins a {color: #009688 !important;}
+html[data-theme=dark] del a {color: #E91E63 !important;}
+html[data-theme=dark] div#zh-hovercard a {color: #353535 !important;}
`,
style_darkMode_2 = `/* 暗黑模式(方案 2) */
html {filter: invert(80%) !important;}
@@ -304,6 +314,9 @@ html {filter: brightness(75%) sepia(30%) !important; background-image: url();}
document.lastChild.setAttribute('data-theme', 'dark');
location.reload(); // 刷新网页
}
+ if (location.pathname.indexOf('/log') > -1) {
+ document.documentElement.setAttribute('data-theme', 'dark')
+ }
} else {
if (getTheme() === 'dark') {
document.cookie="theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";
From fb258530c7aa0f07a839bbe9a118b09a5485b178 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Tue, 27 Jul 2021 08:05:12 +0800
Subject: [PATCH 0039/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20[=E6=9A=97?=
=?UTF-8?q?=E9=BB=91=E6=A8=A1=E5=BC=8F=201]=20=E6=94=AF=E6=8C=81=E9=97=AE?=
=?UTF-8?q?=E9=A2=98=E6=97=A5=E5=BF=97=E9=A1=B5=E7=AD=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Zhihu-Beautification.user.js | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/Zhihu-Beautification.user.js b/Zhihu-Beautification.user.js
index d44b2fb2d..0322d33da 100644
--- a/Zhihu-Beautification.user.js
+++ b/Zhihu-Beautification.user.js
@@ -269,8 +269,8 @@ html[data-theme=dark] .CommentItemV2--highlighted {-webkit-animation: nano !impo
/* 赞赏 */
html[data-theme=dark] .Reward-TipjarDialog-amountList .Button--red, html[data-theme=dark] .Reward-TipjarDialog-amountList .Button--red, html[data-theme=dark] .Reward-TipjarDialog-amountInput .SimpleInput {color: #d3d3d3 !important; background-color: #353b44 !important; border: none !important;}
-
-/* 问题日志页 */
+`,
+ style_darkMode_1_x = `/* 问题日志页 */
html[data-theme=dark] .zu-top {background: #2D333B !important;border: none !important;}
html[data-theme=dark] .zm-tag-editor-labels.zg-clear a {background: rgba(51,119,255,.1) !important;}
html[data-theme=dark] .zu-main {background: #2D333B !important;padding-left: 20px;padding-right: 20px;}
@@ -279,7 +279,7 @@ html[data-theme=dark] a {color: #D4E5F4 !important;}
html[data-theme=dark] ins, html[data-theme=dark] ins a {color: #009688 !important;}
html[data-theme=dark] del a {color: #E91E63 !important;}
html[data-theme=dark] div#zh-hovercard a {color: #353535 !important;}
-`,
+ `,
style_darkMode_2 = `/* 暗黑模式(方案 2) */
html {filter: invert(80%) !important;}
img, .ZVideoItem-video, .ZVideo-video {filter: invert(1) !important;}
@@ -315,7 +315,8 @@ html {filter: brightness(75%) sepia(30%) !important; background-image: url();}
location.reload(); // 刷新网页
}
if (location.pathname.indexOf('/log') > -1) {
- document.documentElement.setAttribute('data-theme', 'dark')
+ document.documentElement.setAttribute('data-theme', 'dark');
+ style_darkMode_1 += style_darkMode_1_x;
}
} else {
if (getTheme() === 'dark') {
From 0a27c2280c77c156e1fe5d0334991c7ed598938f Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Tue, 27 Jul 2021 08:07:43 +0800
Subject: [PATCH 0040/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20[=E6=9A=97?=
=?UTF-8?q?=E9=BB=91=E6=A8=A1=E5=BC=8F=201]=20=E6=94=AF=E6=8C=81=E9=97=AE?=
=?UTF-8?q?=E9=A2=98=E6=97=A5=E5=BF=97=E9=A1=B5=E7=AD=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Zhihu-Beautification.user.js | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Zhihu-Beautification.user.js b/Zhihu-Beautification.user.js
index 0322d33da..a54af2007 100644
--- a/Zhihu-Beautification.user.js
+++ b/Zhihu-Beautification.user.js
@@ -243,6 +243,8 @@ html[data-theme=dark] .Topbar, html[data-theme=dark] .CommentsV2-footer, html[da
html[data-theme=dark] .CommentEditorV2-inputWrap--active, html[data-theme=dark] .CommentEditorV2-inputWrap, html[data-theme=dark] .PostItem {border: none !important;}
html[data-theme=dark] .InputLike {border: 1px solid #424b56 !important;}
html[data-theme=dark] .Popover .InputLike {border: 1px solid #2d333b !important;}
+html[data-theme=dark] .HotLanding-contentItem:not(:last-child) {border-bottom: 1px solid #424b56 !important;}
+html[data-theme=dark] .HotLanding-content {border-left: 2px solid #424b56 !important;}
html[data-theme=dark] .Popover-content, html[data-theme=dark] .Popover-arrow:after {border: 1px solid #22272e !important;}
From 4bd3ef1582a4e22ad6640d45ec3d7ff78d9e56e7 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Tue, 27 Jul 2021 08:35:03 +0800
Subject: [PATCH 0041/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E9=98=BF?=
=?UTF-8?q?=E9=87=8C=E5=B0=8F=E7=AB=99]=20=E6=94=AF=E6=8C=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 21 ++++++++++++++++++---
1 file changed, 18 insertions(+), 3 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index b8e4dd5de..5c41adad6 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.3.2
+// @version 1.3.3
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、3DM游戏网、游侠网、游民星空、千图网、RARBG、FitGirl Repacks、AlphaCoders、PubMed...
+// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed...
// @match *://*/*
// @exclude *://www.423down.com/*.html
// @exclude *://apphot.cc/*.html
@@ -40,7 +40,8 @@
'gl.ali213.net',
'www.58pic.com',
'rarbgprx.org',
- 'www.yxssp.com'];
+ 'www.yxssp.com',
+ 'pan.yuankongjian.com'];
if (GM_getValue('menu_disable') == null){GM_setValue('menu_disable', [])};
// 注册脚本菜单
@@ -410,6 +411,15 @@
replaceE: 'css;.page-nav.td-pb-padding-side',
scrollDelta: 900
}
+ },
+ yuankongjian: {
+ SiteTypeID: 28,
+ pager: {
+ type: 2,
+ nextLink: 'button[title="加载更多"]',
+ nextText: '加载更多',
+ scrollDelta: 500
+ }
}
};
@@ -501,6 +511,11 @@
case "rarbgprx.org":
curSite = DBSite.rarbgprx;
break;
+ case "pan.yuankongjian.com":
+ if (location.pathname.indexOf('/d/') === -1) {
+ curSite = DBSite.yuankongjian;
+ }
+ break;
default: // < Discuz! 论坛专用 >
if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
From cc6a0812710cd88dbf7380f54423e80b03507e25 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Wed, 28 Jul 2021 19:08:21 +0800
Subject: [PATCH 0042/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=BE=AE?=
=?UTF-8?q?=E5=8D=9A=E8=AF=84=E8=AE=BA]=20=E6=94=AF=E6=8C=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 19 ++++++++++++++++---
1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 5c41adad6..107f03bb4 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.3.3
+// @version 1.3.4
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed...
+// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、微博评论、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed...
// @match *://*/*
// @exclude *://www.423down.com/*.html
// @exclude *://apphot.cc/*.html
@@ -41,7 +41,8 @@
'www.58pic.com',
'rarbgprx.org',
'www.yxssp.com',
- 'pan.yuankongjian.com'];
+ 'pan.yuankongjian.com',
+ 'weibo.com'];
if (GM_getValue('menu_disable') == null){GM_setValue('menu_disable', [])};
// 注册脚本菜单
@@ -420,6 +421,15 @@
nextText: '加载更多',
scrollDelta: 500
}
+ },
+ weibo_comment: {
+ SiteTypeID: 29,
+ pager: {
+ type: 2,
+ nextLink: 'a[action-type="click_more_comment"]',
+ nextText: '查看更多c',
+ scrollDelta: 1000
+ }
}
};
@@ -516,6 +526,9 @@
curSite = DBSite.yuankongjian;
}
break;
+ case "weibo.com":
+ curSite = DBSite.weibo_comment;
+ break;
default: // < Discuz! 论坛专用 >
if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
From 37ab90e9186220f09239f976df46eca27d5b32e6 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 29 Jul 2021 07:02:36 +0800
Subject: [PATCH 0043/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[AfreecaTV]=20?=
=?UTF-8?q?=E6=94=AF=E6=8C=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 33 +++++++++++++++++++--------------
1 file changed, 19 insertions(+), 14 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 107f03bb4..9ba846c67 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.3.4
+// @version 1.3.5
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、微博评论、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed...
+// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、微博评论、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed、AfreecaTV...
// @match *://*/*
// @exclude *://www.423down.com/*.html
// @exclude *://apphot.cc/*.html
@@ -23,26 +23,19 @@
(function() {
'use strict';
// 目前支持的网站
- var websiteList = ['www.423down.com',
- 'apphot.cc',
- 'iao.su',
- 'www.appinn.com',
- 'www.iplaysoft.com',
- 'www.weidown.com',
- 'fitgirl-repacks.site',
+ var websiteList = ['www.423down.com', 'apphot.cc', 'iao.su', 'www.appinn.com', 'www.iplaysoft.com', 'www.weidown.com',
'art.alphacoders.com', 'wall.alphacoders.com', 'avatars.alphacoders.com', 'mobile.alphacoders.com',
'pubmed.ncbi.nlm.nih.gov',
'movie.douban.com',
'search.douban.com',
- 'www.3dmgame.com',
- 'www.gamersky.com',
- 'www.ali213.net',
- 'gl.ali213.net',
+ 'www.3dmgame.com', 'www.gamersky.com', 'www.ali213.net', 'gl.ali213.net',
'www.58pic.com',
'rarbgprx.org',
+ 'fitgirl-repacks.site',
'www.yxssp.com',
'pan.yuankongjian.com',
- 'weibo.com'];
+ 'weibo.com',
+ 'www.afreecatv.com'];
if (GM_getValue('menu_disable') == null){GM_setValue('menu_disable', [])};
// 注册脚本菜单
@@ -430,6 +423,15 @@
nextText: '查看更多c',
scrollDelta: 1000
}
+ },
+ afreecatv: {
+ SiteTypeID: 30,
+ pager: {
+ type: 2,
+ nextLink: '.btn-more > button',
+ nextText: '查看更多',
+ scrollDelta: 1000
+ }
}
};
@@ -529,6 +531,9 @@
case "weibo.com":
curSite = DBSite.weibo_comment;
break;
+ case "www.afreecatv.com":
+ curSite = DBSite.afreecatv;
+ break;
default: // < Discuz! 论坛专用 >
if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
From d649e170d1eab9cbc181f60a8533168d0b00a9dd Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 29 Jul 2021 19:32:58 +0800
Subject: [PATCH 0044/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DarkMode.user.js | 13 +--
GithubEnhanced-High-Speed-Download.user.js | 25 +-----
Zhihu-Beautification.user.js | 94 ++++++++--------------
3 files changed, 36 insertions(+), 96 deletions(-)
diff --git a/DarkMode.user.js b/DarkMode.user.js
index 270cfcb7a..c5d240ff1 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -95,18 +95,9 @@
}
+ // 菜单数字图标
function menu_num(num) {
- switch(num) {
- case 1:
- return '1️⃣'
- break;
- case 2:
- return '2️⃣'
- break;
- case 3:
- return '3️⃣'
- break;
- }
+ return ['0️⃣','1️⃣','2️⃣','3️⃣','4️⃣','5️⃣','6️⃣','7️⃣','8️⃣','9️⃣','🔟'][num]
}
diff --git a/GithubEnhanced-High-Speed-Download.user.js b/GithubEnhanced-High-Speed-Download.user.js
index 41d4f8294..e98e8dd99 100644
--- a/GithubEnhanced-High-Speed-Download.user.js
+++ b/GithubEnhanced-High-Speed-Download.user.js
@@ -109,30 +109,9 @@
registerMenuCommand(); // 重新注册脚本菜单
};
+ // 菜单数字图标
function menu_num(num) {
- switch(num) {
- case 0:
- return '0️⃣'
- break;
- case 1:
- return '1️⃣'
- break;
- case 2:
- return '2️⃣'
- break;
- case 3:
- return '3️⃣'
- break;
- case 4:
- return '4️⃣'
- break;
- case 5:
- return '5️⃣'
- break;
- case 6:
- return '6️⃣'
- break;
- }
+ return ['0️⃣','1️⃣','2️⃣','3️⃣','4️⃣','5️⃣','6️⃣','7️⃣','8️⃣','9️⃣','🔟'][num]
}
addRelease(); // Release 加速
diff --git a/Zhihu-Beautification.user.js b/Zhihu-Beautification.user.js
index a54af2007..0a16498db 100644
--- a/Zhihu-Beautification.user.js
+++ b/Zhihu-Beautification.user.js
@@ -67,9 +67,9 @@
}
GM_setValue(`${Name}`, menu_status);
if (menu_status === 1) { // 设置 Cookie
- if (getTheme() === 'light') document.cookie="theme=dark; expires=Thu, 18 Dec 2031 12:00:00 GMT; path=/";
+ if (getTheme() === 'light') document.cookie='theme=dark; expires=Thu, 18 Dec 2031 12:00:00 GMT; path=/';
} else {
- if (getTheme() === 'dark') document.cookie="theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";
+ if (getTheme() === 'dark') document.cookie='theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';
}
if (menu_value('menu_darkMode')) {
location.reload(); // 刷新网页
@@ -79,21 +79,9 @@
}
};
+ // 菜单数字图标
function menu_num(num) {
- switch(num) {
- case 1:
- return '1️⃣'
- break;
- case 2:
- return '2️⃣'
- break;
- case 3:
- return '3️⃣'
- break;
- case 4:
- return '4️⃣'
- break;
- }
+ return ['0️⃣','1️⃣','2️⃣','3️⃣','4️⃣','5️⃣','6️⃣','7️⃣','8️⃣','9️⃣','🔟'][num]
}
// 菜单开关
@@ -102,7 +90,7 @@
GM_setValue(`${Name}`, false);
if (Name === 'menu_darkMode') { // 暗黑模式
- if (getTheme() === 'dark') document.cookie="theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";
+ if (getTheme() === 'dark') document.cookie='theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';
location.reload(); // 刷新网页
} else {
GM_notification({text: `已关闭 [${Tips}] 功能\n(刷新网页后生效)`, timeout: 3500});
@@ -112,9 +100,9 @@
if (Name === 'menu_darkMode') {
if (menu_value('menu_darkModeType') === 1) {
- if (getTheme() === 'light') document.cookie="theme=dark; expires=Thu, 18 Dec 2031 12:00:00 GMT; path=/";
+ if (getTheme() === 'light') document.cookie='theme=dark; expires=Thu, 18 Dec 2031 12:00:00 GMT; path=/';
} else {
- if (getTheme() === 'dark') document.cookie="theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";
+ if (getTheme() === 'dark') document.cookie='theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';
}
location.reload(); // 刷新网页
} else {
@@ -254,6 +242,10 @@ html[data-theme=dark] body::-webkit-scrollbar-thumb, html[data-theme="dark"] .Me
html[data-theme=dark] body::-webkit-scrollbar-track {background: #22272e !important;}
html[data-theme=dark] .MessagesBox::-webkit-scrollbar-track, html[data-theme="dark"] .Messages-list::-webkit-scrollbar-track, html[data-theme=dark] .PushNotifications-list::-webkit-scrollbar-track, html[data-theme=dark] .CommentListV2::-webkit-scrollbar-track, .ChatListGroup-SectionContent::-webkit-scrollbar-track, html[data-theme=dark] .ChatSideBar-Search-ResultListWrap::-webkit-scrollbar-track, html[data-theme=dark] .ChatBox textarea.Input::-webkit-scrollbar-track {background: #2d333b !important;}
+/* 滚动条 - 回答目录 */
+html[data-theme=dark] .AnswerItem .RichContent-hasCatalog .RichContent-inner .Catalog.isCatalogV2::-webkit-scrollbar {width: 0 !important;}
+html[data-theme=dark] .AnswerItem .RichContent-hasCatalog .RichContent-inner .Catalog.isCatalogV2 > :first-child {background: #2D333B !important;}
+
html {scrollbar-width: thin; scrollbar-color: #3f4752 #22272e;}
.MessagesBox, .Messages-list, .PushNotifications-list, .CommentListV2, .ChatListGroup-SectionContent, .ChatSideBar-Search-ResultListWrap {scrollbar-width: thin; scrollbar-color: #3f4752 #2D333B;}
@@ -308,21 +300,24 @@ html {filter: brightness(75%) sepia(30%) !important; background-image: url();}
`
let style_Add = document.createElement('style');
- // 暗黑模式
+ // 如果开启了暗黑模式
if (menu_value('menu_darkMode')) {
+ // 如果暗黑模式为 1
if (menu_value('menu_darkModeType') === 1) {
+ // 如果当前知乎主题为白天模式,那就是改为暗黑模式
if (getTheme() === 'light') {
- document.cookie="theme=dark; expires=Thu, 18 Dec 2031 12:00:00 GMT; path=/";
+ document.cookie='theme=dark; expires=Thu, 18 Dec 2031 12:00:00 GMT; path=/';
document.lastChild.setAttribute('data-theme', 'dark');
location.reload(); // 刷新网页
}
+ // 如果是问题日志页,则改为暗黑模式
if (location.pathname.indexOf('/log') > -1) {
document.documentElement.setAttribute('data-theme', 'dark');
style_darkMode_1 += style_darkMode_1_x;
}
- } else {
+ } else { // 如果是其他暗黑模式,则需要确保为白天模式
if (getTheme() === 'dark') {
- document.cookie="theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";
+ document.cookie='theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';
document.lastChild.setAttribute('data-theme', 'light');
location.reload(); // 刷新网页
}
@@ -348,67 +343,42 @@ html {filter: brightness(75%) sepia(30%) !important; background-image: url();}
}
} else {
if (getTheme() === 'dark'){
- document.cookie="theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";
+ document.cookie='theme=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';
document.lastChild.setAttribute('data-theme', 'light');
location.reload(); // 刷新网页
}
}
// 宽屏显示
- if (menu_value('menu_widescreenDisplay')) {
- style += style_1;
- }
-
+ if (menu_value('menu_widescreenDisplay')) style += style_1;
// 调整图片最大高度
- if (menu_value('menu_picHeight')) {
- style += style_5;
- }
-
+ if (menu_value('menu_picHeight')) style += style_5;
// 隐藏文章开头大图
- if (menu_value('menu_postimg')) {
- style += style_2;
- }
-
+ if (menu_value('menu_postimg')) style += style_2;
// 向下翻时自动隐藏顶栏
- if (menu_value('menu_hideTitle')) {
- style += style_4;
- }
+ if (menu_value('menu_hideTitle')) style += style_4;
// 文章编辑页面与实际文章宽度一致
- if(window.location.href.indexOf("zhuanlan") > -1){
- if(window.location.href.indexOf("/edit") > -1){
- style += style_3;
- }
- }
-
- /*style_Add.innerHTML = style;
- if (document.head) {
- document.head.appendChild(style_Add);
- } else {
- let timer = setInterval(function(){
- if (document.head) {
- document.head.appendChild(style_Add);
- clearInterval(timer);
- }
- }, 1);
- }*/
+ if (window.location.href.indexOf('zhuanlan') > -1 && window.location.href.indexOf('/edit') > -1) style += style_3;
if (document.lastChild) {
document.lastChild.appendChild(style_Add).textContent = style;
} else { // 避免网站加载速度太慢的备用措施
- let timer1 = setInterval(function(){ // 每 5 毫秒检查一下 html 是否已存在
+ let timer1 = setInterval(function(){ // 每 10 毫秒检查一下 html 是否已存在
if (document.lastChild) {
clearInterval(timer1); // 取消定时器
document.lastChild.appendChild(style_Add).textContent = style;
}
- }, 5);
+ }, 10);
}
}
+
+
+ // 获取知乎 Cookie 中的主题类型
function getTheme() {
- let name = "theme=";
- let ca = document.cookie.split(';');
- for(let i=0; i
Date: Fri, 30 Jul 2021 07:25:41 +0800
Subject: [PATCH 0045/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=B1=8F?=
=?UTF-8?q?=E8=94=BD=E5=85=B3=E9=94=AE=E8=AF=8D]=20=E5=8A=9F=E8=83=BD?=
=?UTF-8?q?=E5=AF=B9=E8=AF=84=E8=AE=BA=E7=9A=84=E6=94=AF=E6=8C=81=20(#59)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* 添加屏蔽评论功能
* 支持通知等其他地方的评论屏蔽
---
Zhihu-Enhanced.user.js | 51 +++++++++++++++++++++++++++++++++++++++++-
1 file changed, 50 insertions(+), 1 deletion(-)
diff --git a/Zhihu-Enhanced.user.js b/Zhihu-Enhanced.user.js
index 28d0a1f78..c3e1e6cff 100644
--- a/Zhihu-Enhanced.user.js
+++ b/Zhihu-Enhanced.user.js
@@ -483,6 +483,9 @@ function blockKeywords(type) {
case 'search':
blockKeywords_search();
break;
+ case 'comment':
+ blockKeywords_comment();
+ break;
}
function blockKeywords_index_() {
@@ -630,6 +633,52 @@ function blockKeywords(type) {
}
document.addEventListener('DOMNodeInserted', blockKeywords); // 监听插入事件
}
+
+
+ function blockKeywords_comment() {
+ function filterComment(comment) {
+ let content = comment.querySelector('.RichText');
+ let texts = [content.textContent.toLowerCase()];
+ for (let i = 0; i < content.children.length; i++) {
+ let emoticonValue = content.children[i].getAttribute('data-zhihu-emoticon');
+ if (emoticonValue) {
+ texts.push(emoticonValue)
+ }
+ }
+
+ let keywords = menu_value('menu_customBlockKeywords');
+ for (const text of texts) {
+ for (const keyword of keywords) { // 遍历关键词黑名单
+ if (text.indexOf(keyword.toLowerCase()) > -1) { // 找到就删除该信息流
+ console.log(text);
+ content.textContent = '[已屏蔽]';
+ break;
+ }
+ }
+ }
+ }
+ function blockKeywords(node) {
+ switch (node.className) {
+ case 'NestComment--rootComment':
+ case 'NestComment--child':
+ case 'CommentItemV2':
+ filterComment(node);
+ break;
+ }
+ }
+
+ const callback = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ for (const node of target.querySelectorAll('*')) {
+ blockKeywords(node);
+ }
+ }
+ }
+ };
+ const observer = new MutationObserver(callback);
+ observer.observe(document, { childList: true, subtree: true });
+ }
}
@@ -992,12 +1041,12 @@ function questionInvitation(){
});
}
-
(function() {
addEventListener_DOMNodeInserted(); // 监听 网页插入元素 事件
questionInvitation(); // 默认折叠邀请
setInterval(originalPic,100); // 默认高清原图
if (menu_value('menu_directLink')) setInterval(directLink, 100); // 默认站外直链
+ blockKeywords('comment'); // 评论屏蔽指定关键词
if (window.location.href.indexOf("question") > -1) { // 回答页 //
if (window.location.href.indexOf("waiting") == -1) {
From 54722b3dd79047b9dcca1c2c5fc39dfdacf2cf63 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 30 Jul 2021 15:23:31 +0800
Subject: [PATCH 0046/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81(DOMNodeInserted=20=E6=94=B9=E4=B8=BA=20MutationObserv?=
=?UTF-8?q?er)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Zhihu-Enhanced.user.js | 633 ++++++++++++++++++++++++-----------------
1 file changed, 374 insertions(+), 259 deletions(-)
diff --git a/Zhihu-Enhanced.user.js b/Zhihu-Enhanced.user.js
index 28d0a1f78..ea6e03a6a 100644
--- a/Zhihu-Enhanced.user.js
+++ b/Zhihu-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 知乎增强
-// @version 1.5.0
+// @version 1.5.1
// @author X.I.U
// @description 移除登录弹窗、一键收起回答、收起当前回答/评论(点击两侧空白处)、快捷回到顶部(右键两侧空白处)、屏蔽用户 (发布的内容)、屏蔽关键词(标题)、屏蔽盐选内容、展开问题描述、置顶显示时间、显示问题时间、区分问题文章、默认高清原图、默认站外直链
// @match *://www.zhihu.com/*
@@ -238,7 +238,7 @@ function blockUsers(type) {
if (!menu_value('menu_customBlockUsers') || menu_value('menu_customBlockUsers').length < 1) return
switch(type) {
case 'index':
- blockUsers_index();
+ blockUsers_('.Card.TopstoryItem.TopstoryItem--old.TopstoryItem-isRecommend', 'Card TopstoryItem TopstoryItem--old TopstoryItem-isRecommend');
break;
case 'question':
blockUsers_question();
@@ -246,6 +246,9 @@ function blockUsers(type) {
case 'search':
blockUsers_search();
break;
+ case 'topic':
+ blockUsers_('.List-item.TopicFeedItem', 'List-item TopicFeedItem');
+ break;
case 'people':
blockUsers_button_people(); // 添加屏蔽用户按钮(用户主页)
break;
@@ -253,59 +256,109 @@ function blockUsers(type) {
blockUsers_comment(); // 评论区
blockUsers_button(); // 加入黑名单按钮
- function blockUsers_index() {
- let blockUsers = e => {
- if (e.target.innerHTML && e.target.getElementsByClassName('Feed').length > 0) {
- let item = e.target.getElementsByClassName('Feed')[0].getElementsByClassName('ContentItem AnswerItem')[0]; // 用户名所在元素
+ function blockUsers_(className1, className2) {
+ // 前几条因为是直接加载的,而不是动态插入网页的,所以需要单独判断
+ function blockKeywords_now() {
+ document.querySelectorAll(className1).forEach(function(item1){
+ let item = item1.querySelector('.ContentItem.AnswerItem, .ContentItem.ArticleItem'); // 用户名所在元素
if (item) {
- menu_value('menu_customBlockUsers').forEach(function(item1){ // 遍历用户黑名单
- if (item.dataset.zop.indexOf('authorName":"' + item1 + '",') > -1) { // 找到就删除该信息流
+ for (const keyword of menu_value('menu_customBlockUsers')) { // 遍历用户名黑名单
+ if (item.dataset.zop.indexOf('authorName":"' + keyword + '",') > -1) { // 找到就删除该信息流
console.log(item.dataset.zop);
- item.parentNode.parentNode.remove();
+ item1.remove();
+ break;
}
- })
+ }
}
- }
+ })
}
- document.addEventListener('DOMNodeInserted', blockUsers); // 监听插入事件
-
- let listItem = document.getElementsByClassName('Card TopstoryItem TopstoryItem--old TopstoryItem-isRecommend');
- Array.from(listItem).forEach(function(item){ // 遍历所有回答
- let listName = item.querySelector('.ContentItem.AnswerItem') // 用户名所在元素
- if (listName) {
- menu_value('menu_customBlockUsers').forEach(function(item1){ // 遍历用户黑名单
- if (listName.dataset.zop.indexOf('authorName":"' + item1 + '",') > -1) { // 找到就删除该信息流
- console.log(listName.dataset.zop);
- item.remove();
+
+ blockKeywords_now();
+ addLocationchange();
+ window.addEventListener('locationchange', function(){
+ setTimeout(blockKeywords_now, 500); // 网页 URL 变化后再次执行
+ })
+
+ // 这个是监听网页插入事件,用来判断后续网页动态插入的元素
+ const callback = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ if (target.className === className2) {
+ let item = target.querySelector('.ContentItem.AnswerItem, .ContentItem.ArticleItem'); // 用户名所在元素
+ if (item) {
+ for (const keyword of menu_value('menu_customBlockUsers')) { // 遍历用户名黑名单
+ if (item.dataset.zop.indexOf('authorName":"' + keyword + '",') > -1) { // 找到就删除该信息流
+ console.log(item.dataset.zop);
+ target.remove();
+ break;
+ }
+ }
+ }
}
- })
+ }
}
- })
+ };
+ const observer = new MutationObserver(callback);
+ observer.observe(document, { childList: true, subtree: true });
}
+
function blockUsers_question() {
- let blockUsers = e => {
- if (e.target.innerHTML && e.target.getElementsByClassName('ContentItem AnswerItem').length > 0) {
- let item = e.target.getElementsByClassName('ContentItem AnswerItem')[0]; // 用户名所在元素
- if (item) {
- menu_value('menu_customBlockUsers').forEach(function(item1){ // 遍历用户黑名单
- if (item.dataset.zop.indexOf('authorName":"' + item1 + '",') > -1) { // 找到就删除该回答
- console.log(item.dataset.zop)
- item.parentNode.remove();
+ const blockUsers_question_ = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ if (target.className === 'List-item' || target.className === 'Card AnswerCard') {
+ let item1 = target.querySelector('.ContentItem.AnswerItem');
+ if (item1) {
+ menu_value('menu_customBlockUsers').forEach(function(item2){ // 遍历用户黑名单
+ if (item1.dataset.zop.indexOf('authorName":"' + item2 + '",') > -1) { // 找到就删除该回答
+ console.log(item1.dataset.zop)
+ target.remove();
+ }
+ })
+ }
+ }
+ }
+ }
+ };
+
+ const blockUsers_question_answer_ = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ target.querySelectorAll('.List-item, .Card.AnswerCard').forEach(function(item){
+ let item1 = item.querySelector('.ContentItem.AnswerItem');
+ if (item1) {
+ menu_value('menu_customBlockUsers').forEach(function(item2){ // 遍历用户黑名单
+ if (item1.dataset.zop.indexOf('authorName":"' + item2 + '",') > -1) { // 找到就删除该回答
+ console.log(item1.dataset.zop)
+ item.remove();
+ }
+ })
}
})
}
}
+ };
+
+ if (location.pathname.indexOf('/answer/') > -1) { // 回答页(就是只有三个回答的页面)
+ const observer = new MutationObserver(blockUsers_question_answer_);
+ observer.observe(document, { childList: true, subtree: true });
+ } else { // 问题页(可以显示所有回答的页面)
+ const observer = new MutationObserver(blockUsers_question_);
+ observer.observe(document, { childList: true, subtree: true });
}
- document.addEventListener('DOMNodeInserted', blockUsers); // 监听插入事件
-
- let listItem = document.getElementsByClassName('ContentItem AnswerItem');
- Array.from(listItem).forEach(function(item){ // 遍历所有回答 // 用户名所在元素
- if (item) {
- menu_value('menu_customBlockUsers').forEach(function(item1){ // 遍历用户黑名单
- if (item.dataset.zop.indexOf('authorName":"' + item1 + '",') > -1) { // 找到就删除该回答
- console.log(item.dataset.zop)
- item.parentNode.remove();
+
+ // 针对的是打开网页后直接加载的前面几个回答(上面哪些是针对动态加载的回答)
+ document.querySelectorAll('.List-item, .Card.AnswerCard').forEach(function(item){
+ let item1 = item.querySelector('.ContentItem.AnswerItem');
+ if (item1) {
+ menu_value('menu_customBlockUsers').forEach(function(item2){ // 遍历用户黑名单
+ if (item1.dataset.zop.indexOf('authorName":"' + item2 + '",') > -1) { // 找到就删除该回答
+ console.log(item1.dataset.zop)
+ item.remove();
}
})
}
@@ -313,75 +366,115 @@ function blockUsers(type) {
}
function blockUsers_search() {
- let blockUsers = e => {
- if (e.target.innerHTML && e.target.getElementsByClassName('List-item').length > 0) {
- let item = e.target.getElementsByClassName('List-item')[0];
- let listName = item.querySelector('.RichText.ztext.CopyrightRichText-richText b') // 用户名所在元素
- if (listName) {
- menu_value('menu_customBlockUsers').forEach(function(item1){ // 遍历用户黑名单
- if (item1 === listName.innerText) { // 找到就删除该搜索结果
- console.log(listName.innerText);
- item.parentNode.remove();
+ function blockUsers_now() {
+ if (location.search.indexOf('type=content') === -1) return // 目前只支持搜索页的 [综合]
+ document.querySelectorAll('.Card.SearchResult-Card[data-za-detail-view-path-module="AnswerItem"], .Card.SearchResult-Card[data-za-detail-view-path-module="PostItem"]').forEach(function(item1){
+ let item = item1.querySelector('.RichText.ztext.CopyrightRichText-richText b'); // 标题所在元素
+ if (item) {
+ for (const keyword of menu_value('menu_customBlockUsers')) { // 遍历关键词黑名单
+ if (item.textContent === keyword) { // 找到就删除该信息流
+ console.log(item.textContent);
+ item1.remove();
+ break;
}
- })
+ }
}
- }
+ })
}
- document.addEventListener('DOMNodeInserted', blockUsers); // 监听插入事件
+
+ setTimeout(blockUsers_now, 500);
+ addLocationchange();
+ window.addEventListener('locationchange', function(){
+ setTimeout(blockUsers_now, 500); // 网页 URL 变化后再次执行
+ })
+
+ const callback = (mutationsList, observer) => {
+ if (location.search.indexOf('type=content') === -1) return // 目前只支持搜索页的 [综合]
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ if (target.className === 'Card SearchResult-Card' && (target.dataset.zaDetailViewPathModule === 'AnswerItem' || target.dataset.zaDetailViewPathModule === 'PostItem')) {
+ let item = target.querySelector('.RichText.ztext.CopyrightRichText-richText b'); // 用户名所在元素
+ if (item) {
+ for (const keyword of menu_value('menu_customBlockUsers')) { // 遍历用户名黑名单
+ if (item.textContent === keyword) { // 找到就删除该信息流
+ console.log(item.textContent);
+ target.remove();
+ break;
+ }
+ }
+ }
+ }
+ }
+ }
+ };
+ const observer = new MutationObserver(callback);
+ observer.observe(document, { childList: true, subtree: true });
}
function blockUsers_comment() {
- let blockUsers = e => {
- if (e.target.innerHTML && e.target.querySelector('img.Avatar.UserLink-avatar[width="24"]')) {
- let item = e.target.querySelectorAll('img.Avatar.UserLink-avatar[width="24"]')
- item.forEach(function(item1){ // 遍历用户名
- menu_value('menu_customBlockUsers').forEach(function(item2){ // 遍历用户黑名单
- if (item1.alt === item2) { // 找到就删除该搜索结果
- if (item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--rootCommentNoChild' || item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--rootComment') {
- item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
- } else if (item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--rootCommentNoChild' || item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--rootComment') {
- item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
- } else if (item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--child') {
- item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
- } else if (item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--child') {
- item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
- } else if (item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment') {
- item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
- } else if (item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'CommentItemV2') {
- item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
+ const callback = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ let item = target.querySelector('img.Avatar.UserLink-avatar')
+ if (item) {
+ menu_value('menu_customBlockUsers').forEach(function(item1){ // 遍历用户黑名单
+ if (item.alt === item1) { // 找到就删除该搜索结果
+ // 试了多种方案,感觉还是这个简单粗暴,缺点就是一旦知乎框架改了就失效了,但好在知乎也不会天天改~
+ if (item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--rootCommentNoChild' || item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--rootComment') {
+ item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
+ } else if (item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--rootCommentNoChild' || item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--rootComment') {
+ item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
+ } else if (item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--child') {
+ item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
+ } else if (item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment--child') {
+ item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
+ } else if (item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'NestComment') {
+ item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
+ } else if (item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'CommentItemV2') {
+ item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
+ }
}
- }
- })
+ })
- // 添加屏蔽用户按钮(点赞、回复等按钮后面)
- if (item1) {
- let footer = item1.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.querySelector('.CommentItemV2-metaSibling > .CommentItemV2-footer'),
- userid = item1.parentNode;
- if (userid && footer && !footer.lastElementChild.dataset.name) {
- userid = userid.href.split('/')[4];
- footer.insertAdjacentHTML('beforeend',``);
- footer.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name, this.dataset.userid, false)}
+ // 添加屏蔽用户按钮(点赞、回复等按钮后面)
+ if (item) {
+ let footer = item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.querySelector('.CommentItemV2-metaSibling > .CommentItemV2-footer'),
+ userid = item.parentNode;
+ if (userid && footer && !footer.lastElementChild.dataset.name) {
+ userid = userid.href.split('/')[4];
+ footer.insertAdjacentHTML('beforeend',``);
+ footer.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name, this.dataset.userid, false)}
+ }
}
}
- })
+ }
}
- }
- document.addEventListener('DOMNodeInserted', blockUsers); // 监听插入事件
+ };
+ const observer = new MutationObserver(callback);
+ observer.observe(document, { childList: true, subtree: true });
}
// 添加屏蔽用户按钮(用户信息悬浮框中)
function blockUsers_button() {
- let blockUsers = e => {
- if (e.target.innerHTML && e.target.querySelector('.MemberButtonGroup.ProfileButtonGroup.HoverCard-buttons')) {
- let item = e.target.querySelector('.MemberButtonGroup.ProfileButtonGroup.HoverCard-buttons'),
- item1 = item.parentNode.parentNode.querySelector('a.UserLink-link'),
- name = item1.innerText,
- userid = item1.href.split('/')[4];
- item.insertAdjacentHTML('beforeend', ``);
- item.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name, this.dataset.userid, false)}
+ const callback = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ if (target.className.indexOf('Popover-content Popover-content--top HoverCard-popoverTarget') > -1 || target.className.indexOf('Popover-content Popover-content--bottom HoverCard-popoverTarget') > -1 || target.querySelector('.Popover-content.Popover-content--top.HoverCard-popoverTarget') || target.querySelector('.Popover-content.Popover-content--bottom.HoverCard-popoverTarget')) {
+ let item = target.querySelector('.MemberButtonGroup.ProfileButtonGroup.HoverCard-buttons'),
+ item1 = target.querySelector('a.UserLink-link'),
+ name = item1.textContent,
+ userid = item1.href.split('/')[4];
+ item.insertAdjacentHTML('beforeend', ``);
+ item.lastElementChild.onclick = function(){blockUsers_button_add(this.dataset.name, this.dataset.userid, false)}
+ }
+ }
}
- }
- document.addEventListener('DOMNodeInserted', blockUsers); // 监听插入事件
+ };
+ const observer = new MutationObserver(callback);
+ observer.observe(document, { childList: true, subtree: true });
}
// 添加屏蔽用户按钮(用户主页)
@@ -453,7 +546,7 @@ function blockUsers(type) {
function customBlockKeywords() {
let nowBlockKeywords = '';
menu_value('menu_customBlockKeywords').forEach(function(item){nowBlockKeywords += '|' + item})
- let newBlockKeywords = prompt('编辑 [自定义屏蔽关键词]\n(不同关键词之间使用 "|" 分隔,例如:关键词A|关键词B|关键词C \n(关键词不区分大小写', nowBlockKeywords.replace('|',''));
+ let newBlockKeywords = prompt('编辑 [自定义屏蔽关键词]\n(不同关键词之间使用 "|" 分隔,例如:关键词A|关键词B|关键词C \n(关键词不区分大小写,支持表情如:[捂脸]|[飙泪笑]', nowBlockKeywords.replace('|',''));
if (newBlockKeywords === '') {
GM_setValue('menu_customBlockKeywords', []);
registerMenuCommand(); // 重新注册脚本菜单
@@ -464,171 +557,160 @@ function customBlockKeywords() {
};
-// 屏蔽指定关键词(标题)
+// 屏蔽指定关键词
function blockKeywords(type) {
if (!menu_value('menu_blockKeywords')) return
if (!menu_value('menu_customBlockKeywords') || menu_value('menu_customBlockKeywords').length < 1) return
switch(type) {
case 'index':
- blockKeywords_index_();
- blockKeywords_index();
+ blockKeywords_('.Card.TopstoryItem.TopstoryItem--old.TopstoryItem-isRecommend', 'Card TopstoryItem TopstoryItem--old TopstoryItem-isRecommend');
break;
case 'topic':
- blockKeywords_topic();
- blockKeywords_people();
+ blockKeywords_('.List-item.TopicFeedItem', 'List-item TopicFeedItem');
break;
case 'people':
- blockKeywords_people();
+ blockKeywords_('.List-item', 'List-item');
break;
case 'search':
blockKeywords_search();
break;
+ case 'comment':
+ blockKeywords_comment();
+ break;
}
- function blockKeywords_index_() {
- let item = document.querySelectorAll('h2.ContentItem-title meta[itemprop="name"]'); // 标题所在元素
- if (item.length > 0) {
- item.forEach(function(item2){
- //console.log(item2)
- menu_value('menu_customBlockKeywords').forEach(function(item1){ // 遍历关键词黑名单
- if (item2.content.toLowerCase().indexOf(item1.toLowerCase()) > -1) { // 找到就删除该信息流
- console.log(item2.content);
- if (item2.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'Feed') {
- item2.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
- } else {
- item2.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
+
+ function blockKeywords_(className1, className2) {
+ // 前几条因为是直接加载的,而不是动态插入网页的,所以需要单独判断
+ function blockKeywords_now() {
+ document.querySelectorAll(className1).forEach(function(item1){
+ let item = item1.querySelector('h2.ContentItem-title meta[itemprop="name"], meta[itemprop="headline"]'); // 标题所在元素
+ if (item) {
+ for (const keyword of menu_value('menu_customBlockKeywords')) { // 遍历关键词黑名单
+ if (item.content.toLowerCase().indexOf(keyword.toLowerCase()) > -1) { // 找到就删除该信息流
+ console.log(item.content);
+ item1.hidden = true;
+ break;
}
}
- })
- })
- }
- // 如果是文章标题
- item = document.querySelectorAll('.ContentItem.ArticleItem meta[itemprop="headline"]'); // 标题所在元素
- if (item.length > 0) {
- item.forEach(function(item2){
- //console.log(item2)
- menu_value('menu_customBlockKeywords').forEach(function(item1){ // 遍历关键词黑名单
- if (item2.content.toLowerCase().indexOf(item1.toLowerCase()) > -1) { // 找到就删除该信息流
- console.log('文章',item2.content);
- item2.parentNode.parentNode.parentNode.remove();
- }
- })
+ }
})
}
- }
- function blockKeywords_index() {
- let blockKeywords = e => {
- if (e.target.innerHTML && e.target.getElementsByClassName('ContentItem-title').length > 0) {
- let item = e.target.querySelector('h2.ContentItem-title meta[itemprop="name"]'); // 标题所在元素
- if (item) {
- //console.log(item)
- menu_value('menu_customBlockKeywords').forEach(function(item1){ // 遍历关键词黑名单
- if (item.content.toLowerCase().indexOf(item1.toLowerCase()) > -1) { // 找到就删除该信息流
- console.log(item.content);
- if (item.parentNode.parentNode.parentNode.parentNode.parentNode.className === 'Feed') {
- item.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
- } else {
- item.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
+ blockKeywords_now();
+ addLocationchange();
+ window.addEventListener('locationchange', function(){
+ setTimeout(blockKeywords_now, 500); // 网页 URL 变化后再次执行
+ })
+
+ // 这个是监听网页插入事件,用来判断后续网页动态插入的元素
+ const callback = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ if (target.className === className2) {
+ let item = target.querySelector('h2.ContentItem-title meta[itemprop="name"], meta[itemprop="headline"]'); // 标题所在元素
+ if (item) {
+ for (const keyword of menu_value('menu_customBlockKeywords')) { // 遍历关键词黑名单
+ if (item.content.toLowerCase().indexOf(keyword.toLowerCase()) > -1) { // 找到就删除该信息流
+ console.log(item.content);
+ target.hidden = true;
+ break;
+ }
}
}
- })
- } else { // 如果是文章标题
- item = e.target.querySelector('.ContentItem.ArticleItem meta[itemprop="headline"]'); // 标题所在元素
- if (item) {
- //console.log(item)
- menu_value('menu_customBlockKeywords').forEach(function(item1){ // 遍历关键词黑名单
- if (item.content.toLowerCase().indexOf(item1.toLowerCase()) > -1) { // 找到就删除该信息流
- console.log('文章',item.content);
- item.parentNode.parentNode.parentNode.remove();
- }
- })
}
}
}
- }
- document.addEventListener('DOMNodeInserted', blockKeywords); // 监听插入事件
+ };
+ const observer = new MutationObserver(callback);
+ observer.observe(document, { childList: true, subtree: true });
}
- function blockKeywords_topic() {
- let item = document.querySelectorAll('h2.ContentItem-title meta[itemprop="name"]'); // 标题所在元素
- if (item.length > 0) {
- //console.log(item)
- item.forEach(function(item2){
- menu_value('menu_customBlockKeywords').forEach(function(item1){ // 遍历关键词黑名单
- if (item2.content.toLowerCase().indexOf(item1.toLowerCase()) > -1) { // 找到就删除该信息流
- console.log(item2.content);
- item2.parentNode.parentNode.parentNode.parentNode.remove();
- }
- })
- })
- }
- // 如果是文章标题
- item = document.querySelectorAll('.ContentItem.ArticleItem meta[itemprop="headline"]'); // 标题所在元素
- if (item.length > 0) {
- //console.log(item)
- item.forEach(function(item2){
- menu_value('menu_customBlockKeywords').forEach(function(item1){ // 遍历关键词黑名单
- if (item2.content.toLowerCase().indexOf(item1.toLowerCase()) > -1) { // 找到就删除该信息流
- console.log('文章',item2.content);
- item2.parentNode.parentNode.remove();
+ function blockKeywords_search() {
+ function blockKeywords_now() {
+ if (location.search.indexOf('type=content') === -1) return // 目前只支持搜索页的 [综合]
+ document.querySelectorAll('.Card.SearchResult-Card[data-za-detail-view-path-module="AnswerItem"], .Card.SearchResult-Card[data-za-detail-view-path-module="PostItem"]').forEach(function(item1){
+ let item = item1.querySelector('a[data-za-detail-view-id]'); // 标题所在元素
+ if (item) {
+ for (const keyword of menu_value('menu_customBlockKeywords')) { // 遍历关键词黑名单
+ if (item.textContent.toLowerCase().indexOf(keyword.toLowerCase()) > -1) { // 找到就删除该信息流
+ console.log(item.textContent);
+ item1.hidden = true;
+ break;
+ }
}
- })
+ }
})
}
- }
+ setTimeout(blockKeywords_now, 500);
+ addLocationchange();
+ window.addEventListener('locationchange', function(){
+ setTimeout(blockKeywords_now, 500); // 网页 URL 变化后再次执行
+ })
- function blockKeywords_people() {
- let blockKeywords = e => {
- if (e.target.innerHTML && e.target.getElementsByClassName('ContentItem-title').length > 0) {
- let item = e.target.querySelector('h2.ContentItem-title meta[itemprop="name"]'); // 标题所在元素
- if (item) {
- console.log(item)
- menu_value('menu_customBlockKeywords').forEach(function(item1){ // 遍历关键词黑名单
- if (item.content.toLowerCase().indexOf(item1.toLowerCase()) > -1) { // 找到就删除该信息流
- console.log(item.content);
- item.parentNode.parentNode.parentNode.parentNode.remove();
- }
- })
- } else { // 如果是文章标题
- item = e.target.querySelector('.ContentItem.ArticleItem meta[itemprop="headline"]'); // 标题所在元素
- if (item) {
- console.log(item)
- menu_value('menu_customBlockKeywords').forEach(function(item1){ // 遍历关键词黑名单
- if (item.content.toLowerCase().indexOf(item1.toLowerCase()) > -1) { // 找到就删除该信息流
- console.log('文章',item.content);
- item.parentNode.parentNode.remove();
+ const callback = (mutationsList, observer) => {
+ if (location.search.indexOf('type=content') === -1) return // 目前只支持搜索页的 [综合]
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ if (target.className === 'Card SearchResult-Card' && (target.dataset.zaDetailViewPathModule === 'AnswerItem' || target.dataset.zaDetailViewPathModule === 'PostItem')) {
+ let item = target.querySelector('a[data-za-detail-view-id]'); // 标题所在元素
+ if (item) {
+ for (const keyword of menu_value('menu_customBlockKeywords')) { // 遍历关键词黑名单
+ if (item.textContent.toLowerCase().indexOf(keyword.toLowerCase()) > -1) { // 找到就删除该信息流
+ console.log(item.textContent);
+ target.remove();
+ break;
+ }
}
- })
+ }
}
}
}
- }
- document.addEventListener('DOMNodeInserted', blockKeywords); // 监听插入事件
+ };
+ const observer = new MutationObserver(callback);
+ observer.observe(document, { childList: true, subtree: true });
}
- function blockKeywords_search() {
- let blockKeywords = e => {
- if (location.search.indexOf('&type=content') === -1) return
- //if (e.target.innerHTML) console.log(e.target.innerHTML)
- if (e.target.innerHTML && e.target.getElementsByClassName('ContentItem-title').length > 0) {
- //console.log(e.target.innerHTML)
- let item = e.target.querySelector('h2.ContentItem-title a[data-za-detail-view-id]'); // 标题所在元素
- if (item) {
- //console.log(item)
- menu_value('menu_customBlockKeywords').forEach(function(item1){ // 遍历关键词黑名单
- if (item.innerText.toLowerCase().indexOf(item1.toLowerCase()) > -1) { // 找到就删除该信息流
- console.log(item.innerText);
- item.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
- }
- })
+ function blockKeywords_comment() {
+ function filterComment(comment) {
+ let content = comment.querySelector('.RichText'); // 寻找评论文字所在元素
+ let texts = [content.textContent.toLowerCase()]; // 因为要针对评论中的表情,所以需要整个数组并全部转为小写(用来不区分大小写)
+ for (let i = 0; i < content.children.length; i++) { // 该条针对的是评论中的表情
+ let emoticonValue = content.children[i].getAttribute('data-zhihu-emoticon'); // 确定是表情就将其添加到稍后遍历的数组中
+ if (emoticonValue) {
+ texts.push(emoticonValue)
+ }
+ }
+
+ let keywords = menu_value('menu_customBlockKeywords');
+ for (const text of texts) {
+ for (const keyword of keywords) { // 遍历关键词黑名单
+ if (text.indexOf(keyword.toLowerCase()) > -1) { // 找到就删除该评论
+ console.log(text);
+ content.textContent = '[该评论已屏蔽]';
+ break;
+ }
}
}
}
- document.addEventListener('DOMNodeInserted', blockKeywords); // 监听插入事件
+
+ const callback = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ for (const node of target.querySelectorAll('*')) {
+ if (node.className === 'CommentItemV2-metaSibling') filterComment(node);
+ }
+ }
+ }
+ };
+ const observer = new MutationObserver(callback);
+ observer.observe(document, { childList: true, subtree: true });
}
}
@@ -636,17 +718,43 @@ function blockKeywords(type) {
// 屏蔽盐选内容
function blockYanXuan() {
if (!menu_value('menu_blockYanXuan')) return
- let blockYanXuan = e => {
- if (e.target.innerHTML && e.target.getElementsByClassName('KfeCollection-PurchaseBtn-mask').length > 0) {
- let item = e.target.getElementsByClassName('KfeCollection-PurchaseBtn-mask')[0];
- item.parentNode.parentNode.parentNode.parentNode.parentNode.remove();
+ const blockYanXuan_question = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ if (target.className === 'List-item' || target.className === 'Card AnswerCard') {
+ if (target.querySelector('.KfeCollection-AnswerTopCard-Container, .KfeCollection-PurchaseBtn')) {
+ target.remove();
+ }
+ }
+ }
+ }
+ };
+
+ const blockYanXuan_question_answer = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ target.querySelectorAll('.List-item, .Card.AnswerCard').forEach(function(item){
+ if (item.querySelector('.KfeCollection-AnswerTopCard-Container, .KfeCollection-PurchaseBtn')) {
+ item.remove();
+ }
+ })
+ }
}
+ };
+
+ if (location.pathname.indexOf('/answer/') > -1) { // 回答页(就是只有三个回答的页面)
+ const observer = new MutationObserver(blockYanXuan_question_answer);
+ observer.observe(document, { childList: true, subtree: true });
+ } else { // 问题页(可以显示所有回答的页面)
+ const observer = new MutationObserver(blockYanXuan_question);
+ observer.observe(document, { childList: true, subtree: true });
}
- document.addEventListener('DOMNodeInserted', blockYanXuan); // 监听插入事件
- let listItem = document.getElementsByClassName('List-item');
- Array.from(listItem).forEach(function(item){
- if (item.getElementsByClassName('KfeCollection-PurchaseBtn-mask').length > 0) {
+ // 针对的是打开网页后直接加载的前面几个回答(上面哪些是针对动态加载的回答)
+ document.querySelectorAll('.List-item, .Card.AnswerCard').forEach(function(item){
+ if (item.querySelector('.KfeCollection-AnswerTopCard-Container, .KfeCollection-PurchaseBtn')) {
item.remove();
}
})
@@ -693,52 +801,38 @@ function addTypeTips() {
function questionRichTextMore() {
if (!menu_value('menu_questionRichTextMore')) return
let button = document.querySelector('button.QuestionRichText-more');
- if (button) {
- button.click()
- }
+ if (button) button.click()
}
-// 监听 网页插入元素 事件
-function addEventListener_DOMNodeInserted() {
- // 知乎免登录,修改自:https://greasyfork.org/zh-CN/scripts/417126
- let removeLoginModal = e => {
- if (e.target.innerHTML && e.target.getElementsByClassName('Modal-wrapper').length > 0) {
- if (e.target.getElementsByClassName('Modal-wrapper')[0].querySelector('.signFlowModal')){
- let button = e.target.getElementsByClassName('Button Modal-closeButton Button--plain')[0];
- if (button)button.click();
- }
- }
- }
-
- // 收起当前评论(监听点击事件,点击网页两侧空白处)
- let collapseNowComment = e => {
- if (e.target.innerHTML && e.target.getElementsByClassName('Modal-wrapper Modal-enter').length > 0) {
- document.getElementsByClassName('Modal-backdrop')[0].onclick = function(event){
- if (event.target==this) {
- let closeButton = document.getElementsByClassName('Modal-closeButton')[0]
- if(closeButton) {
- closeButton.click();
- }
+// 知乎免登录
+function removeLogin() {
+ const removeLoginModal = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ if (target.querySelector('.signFlowModal')) {
+ let button = target.getElementsByClassName('Button Modal-closeButton Button--plain')[0];
+ if (button) button.click();
}
}
}
- }
+ };
// 未登录时才会监听并移除登录弹窗
- if(window.location.href.indexOf("zhuanlan") > -1) { // 如果是文章页
- if (!document.querySelector('button.ColumnPageHeader-MenuToggler')) { // 判断不存在,则已登录
- document.addEventListener('DOMNodeInserted', removeLoginModal);
+ if(window.location.href.indexOf('zhuanlan') > -1) { // 如果是文章页
+ if (!document.querySelector('button.ColumnPageHeader-MenuToggler')) { // 如果不存在,则代表已登录
+ const observer = new MutationObserver(removeLoginModal);
+ observer.observe(document, { childList: true, subtree: true });
}
} else { // 不是文章页
- if (document.querySelector('button.AppHeader-login')) { // 如果存在,则未登录
- document.addEventListener('DOMNodeInserted', removeLoginModal);
+ if (document.querySelector('button.AppHeader-login')) { // 如果存在,则代表未登录
+ const observer = new MutationObserver(removeLoginModal);
+ observer.observe(document, { childList: true, subtree: true });
document.querySelector('button.AppHeader-login').onclick=function(){location.href='https://www.zhihu.com/signin';} // [登录] 按钮跳转至登录页面
document.querySelector('.AppHeader-profile button.Button--primary').onclick=function(){location.href='https://www.zhihu.com/signin';} // [加入知乎] 按钮跳转至注册页面(实际上是同一个页面)
}
}
-
- document.addEventListener('DOMNodeInserted', collapseNowComment); // 收起当前评论(监听点击事件,点击网页两侧空白处)
}
@@ -992,12 +1086,33 @@ function questionInvitation(){
});
}
+// 自定义 locationchange 事件(用来监听 URL 变化)
+function addLocationchange() {
+ history.pushState = ( f => function pushState(){
+ var ret = f.apply(this, arguments);
+ window.dispatchEvent(new Event('pushstate'));
+ window.dispatchEvent(new Event('locationchange'));
+ return ret;
+ })(history.pushState);
+
+ history.replaceState = ( f => function replaceState(){
+ var ret = f.apply(this, arguments);
+ window.dispatchEvent(new Event('replacestate'));
+ window.dispatchEvent(new Event('locationchange'));
+ return ret;
+ })(history.replaceState);
+
+ window.addEventListener('popstate',()=>{
+ window.dispatchEvent(new Event('locationchange'))
+ });
+}
(function() {
- addEventListener_DOMNodeInserted(); // 监听 网页插入元素 事件
+ removeLogin(); // 移除登录弹窗
questionInvitation(); // 默认折叠邀请
setInterval(originalPic,100); // 默认高清原图
if (menu_value('menu_directLink')) setInterval(directLink, 100); // 默认站外直链
+ blockKeywords('comment'); // 屏蔽指定关键词(评论)
if (window.location.href.indexOf("question") > -1) { // 回答页 //
if (window.location.href.indexOf("waiting") == -1) {
@@ -1024,7 +1139,7 @@ function questionInvitation(){
collapsedNowAnswer(".ContentLayout"); // 收起当前回答 + 快捷返回顶部
setInterval(topTime_people, 300); // 置顶显示时间
EventXMLHttpRequest(); // 区分问题文章
- blockUsers(); // 屏蔽指定用户
+ blockUsers('topic'); // 屏蔽指定用户
blockKeywords('topic'); // 屏蔽指定关键词
}
} else if (window.location.href.indexOf("zhuanlan") > -1){ // 文章 //
@@ -1042,7 +1157,7 @@ function questionInvitation(){
collapsedNowAnswer("main div"); // 收起当前回答 + 快捷返回顶部
collapsedNowAnswer(".Profile-main"); // 收起当前回答 + 快捷返回顶部
setInterval(topTime_people, 300); // 置顶显示时间
- blockUsers('people'); // 屏蔽指定用户
+ blockUsers('people'); // 屏蔽指定用户
blockKeywords('people'); // 屏蔽指定关键词
} else { // 首页 //
collapsedAnswer(); // 一键收起回答
From 4dbc7793b3ce7edbf9f011d0bac7af93541460fb Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 30 Jul 2021 15:50:18 +0800
Subject: [PATCH 0047/2070] README.md
---
README.md | 2 +-
Zhihu-Enhanced.user.js | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 7521ae615..9f5a93892 100644
--- a/README.md
+++ b/README.md
@@ -19,7 +19,7 @@
| :----: | :---- | :---- | :----: |
| [
](https://github.com/XIU2) | **护眼模式** | 简单有效的全网通用护眼模式、夜间模式、暗黑模式~ | **[安装](https://greasyfork.org/zh-CN/scripts/426377)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/DarkMode.user.js)** |
| [
](https://www.zhihu.com/people/xiu2) | **知乎 美化** | 宽屏显示、**暗黑模式**、隐藏文章开头大图、调整图片最大高... | **[安装](https://greasyfork.org/zh-CN/scripts/412212)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhihu-Beautification.user.js)** |
-| [
](https://www.zhihu.com/people/xiu2) | **知乎 增强** | **移除登录弹窗**、一键收起回答、屏蔽用户、屏蔽关键词(标题)... | **[安装](https://greasyfork.org/zh-CN/scripts/419081)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhihu-Enhanced.user.js)** |
+| [
](https://www.zhihu.com/people/xiu2) | **知乎 增强** | **移除登录弹窗**、一键收起回答、屏蔽用户、屏蔽关键词、快... | **[安装](https://greasyfork.org/zh-CN/scripts/419081)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhihu-Enhanced.user.js)** |
| [
](https://www.v2ex.com/) | **V2ex 增强** | **自动签到**、链接转图片、自动无缝翻页、新标签页打开链接... | **[安装](https://greasyfork.org/zh-CN/scripts/424246)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/V2ex-Enhanced.user.js)** |
| [
](https://github.com/XIU2) | **Github 增强** | **高速下载** Git Clone/SSH、Release、Raw、Code(ZIP) 文件... | **[安装](https://greasyfork.org/zh-CN/scripts/412245)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/GithubEnhanced-High-Speed-Download.user.js)** |
| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | **所有 Discuz!论坛**、423Down、不死鸟、小众软件、异次... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
diff --git a/Zhihu-Enhanced.user.js b/Zhihu-Enhanced.user.js
index ea6e03a6a..4c527aea7 100644
--- a/Zhihu-Enhanced.user.js
+++ b/Zhihu-Enhanced.user.js
@@ -2,7 +2,7 @@
// @name 知乎增强
// @version 1.5.1
// @author X.I.U
-// @description 移除登录弹窗、一键收起回答、收起当前回答/评论(点击两侧空白处)、快捷回到顶部(右键两侧空白处)、屏蔽用户 (发布的内容)、屏蔽关键词(标题)、屏蔽盐选内容、展开问题描述、置顶显示时间、显示问题时间、区分问题文章、默认高清原图、默认站外直链
+// @description 移除登录弹窗、一键收起回答、收起当前回答/评论(点击两侧空白处)、快捷回到顶部(右键两侧空白处)、屏蔽用户 (发布的内容)、屏蔽关键词(标题/评论)、屏蔽盐选内容、展开问题描述、置顶显示时间、显示问题时间、区分问题文章、默认高清原图、默认站外直链
// @match *://www.zhihu.com/*
// @match *://zhuanlan.zhihu.com/*
// @icon https://static.zhihu.com/heifetz/favicon.ico
From 2a0516f352502322e87a870f6db75f01d0b766c4 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 30 Jul 2021 20:11:13 +0800
Subject: [PATCH 0048/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81(=E6=97=B6=E9=97=B4=E9=97=B4=E9=9A=94)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DarkMode.user.js | 10 +++++-----
Zhihu-Beautification.user.js | 4 ++--
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/DarkMode.user.js b/DarkMode.user.js
index c5d240ff1..4506049cd 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 护眼模式
-// @version 1.2.2
+// @version 1.2.3
// @author X.I.U
// @description 简单有效的全网通用护眼模式、夜间模式、暗黑模式
// @match *://*/*
@@ -316,7 +316,7 @@
clearInterval(timer1); // 取消定时器
document.lastChild.appendChild(style_Add).textContent = style;
}
- }, 5);
+ });
}
let websiteList = [];
@@ -325,7 +325,7 @@
}
// 为了避免 body 还没加载导致无法检查是否设置背景颜色
- let timer = setInterval(function(){ // 每 10 毫秒检查一下 body 是否已存在
+ let timer = setInterval(function(){ // 每 5 毫秒检查一下 body 是否已存在
if (document.body) {
clearInterval(timer); // 取消定时器(每 10 毫秒一次的)
setTimeout(function(){ // 为了避免太快 body 的 CSS 还没加载上,先延迟 150 毫秒(缺点就是可能会出现短暂一闪而过的暗黑滤镜)
@@ -365,7 +365,7 @@
}
}, 1500);
}
- }, 10);
+ });
// 用来解决一些 CSS 加载缓慢的网站,可能会出现没有正确排除的问题,在没有找到更好的办法之前,先这样凑活着用
/*setTimeout(function(){
@@ -391,7 +391,7 @@
document.lastChild.appendChild(style_Add).textContent = style;
clearInterval(timer1);
}
- }, 10);
+ });
}
}
diff --git a/Zhihu-Beautification.user.js b/Zhihu-Beautification.user.js
index 0a16498db..5c75b5dd6 100644
--- a/Zhihu-Beautification.user.js
+++ b/Zhihu-Beautification.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 知乎美化
-// @version 1.2.6
+// @version 1.2.7
// @author X.I.U
// @description 宽屏显示、暗黑模式(4种)、隐藏文章开头大图、调整图片最大高度、向下翻时自动隐藏顶栏、文章编辑页面与实际文章宽度一致、屏蔽登录提示
// @match *://www.zhihu.com/*
@@ -369,7 +369,7 @@ html {filter: brightness(75%) sepia(30%) !important; background-image: url();}
clearInterval(timer1); // 取消定时器
document.lastChild.appendChild(style_Add).textContent = style;
}
- }, 10);
+ });
}
}
From 7d7afafc9b771f9c392974490e926e97999f6dbe Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 30 Jul 2021 20:45:55 +0800
Subject: [PATCH 0049/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
GithubEnhanced-High-Speed-Download.user.js | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/GithubEnhanced-High-Speed-Download.user.js b/GithubEnhanced-High-Speed-Download.user.js
index e98e8dd99..77e807e7c 100644
--- a/GithubEnhanced-High-Speed-Download.user.js
+++ b/GithubEnhanced-High-Speed-Download.user.js
@@ -44,7 +44,7 @@
//['https://gh.66ccff.work', '美国'],
//['https://github.91chifun.workers.dev', '美国'],
//['https://github.rc1844.workers.dev', '美国'],
- var download_url = [
+ const download_url = [
['https://gh.api.99988866.xyz', '美国'],
['https://gh.msx.workers.dev', '美国'],
['https://gh.xiu2.xyz', '美国'],
@@ -75,9 +75,8 @@
'',
''
],
- style = ['padding:0 6px;margin-right: -1px;border-radius: 2px;background-color: '+backColor+';border-color: rgba(27, 31, 35, 0.1);font-size: 11px;color: '+fontColor+';'],
- menu_raw_fast = GM_getValue('xiu2_menu_raw_fast'),
- menu_menu_raw_fast_ID, menu_feedBack_ID;
+ style = ['padding:0 6px;margin-right: -1px;border-radius: 2px;background-color: '+backColor+';border-color: rgba(27, 31, 35, 0.1);font-size: 11px;color: '+fontColor+';'];
+ var menu_raw_fast = GM_getValue('xiu2_menu_raw_fast'), menu_menu_raw_fast_ID, menu_feedBack_ID;
if (menu_raw_fast == null){menu_raw_fast = 1; GM_setValue('xiu2_menu_raw_fast', 1)};
registerMenuCommand();
@@ -403,7 +402,7 @@
}
- // 自定义 locationchange 事件(用来监听 URL 变化,针对的是 Github 这种因为使用 pjax 而无法依靠 hashchange 监听的网页)
+ // 自定义 locationchange 事件(用来监听 URL 变化)
function addLocationchange() {
history.pushState = ( f => function pushState(){
var ret = f.apply(this, arguments);
From a8fd47f38d56db9ec85bc290c1d4e11772399116 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 31 Jul 2021 11:07:35 +0800
Subject: [PATCH 0050/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E6=A3=80?=
=?UTF-8?q?=E6=9F=A5=E6=98=AF=E5=90=A6=E7=99=BB=E5=BD=95=E4=BB=A3=E7=A0=81?=
=?UTF-8?q?=EF=BC=88=E7=94=A8=E6=9D=A5=E7=A1=AE=E5=AE=9A=E6=98=AF=E5=90=A6?=
=?UTF-8?q?=E5=BA=94=E8=AF=A5=E7=AD=BE=E5=88=B0=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Hostloc-Enhanced.user.js | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index 884f077d7..c0b72ad42 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 全球主机交流论坛增强
-// @version 1.3.0
+// @version 1.3.1
// @author X.I.U
// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、回帖小尾巴、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
// @match *://hostloc.com/*
@@ -92,6 +92,8 @@
var loginStatus = false;
if (document.getElementById('um')){
loginStatus = true;
+ } else {
+ loginStatus = getLoginStatus();
}
// 默认 ID 为 0
@@ -252,7 +254,7 @@
// 自定义屏蔽用户
function customBlockUsers() {
let nowBlockUsers = '';
- GM_getValue('menu_customBlockUsers').forEach(function(item){nowBlockUsers = nowBlockUsers + '|' + item})
+ GM_getValue('menu_customBlockUsers').forEach(function(item){nowBlockUsers += '|' + item})
let newBlockUsers = prompt('编辑 [自定义屏蔽用户],刷新网页后生效\n(不同用户名之间使用 "|" 分隔,\n(例如:用户A|用户B|用户C,如果只有一个就不需要 "|" 了。', nowBlockUsers.replace('|',''));
if (newBlockUsers === '') {
GM_setValue('menu_customBlockUsers', []);
@@ -305,7 +307,7 @@
function blockUsers_vfastpost() {
let vfastpost = e => {
if (e.target.innerHTML && e.target.innerHTML.indexOf('id="vfastpost"') > -1) {
- let listItem = e.target.querySelectorAll('[id^="post_"]');
+ let listItem = e.target.querySelectorAll('.bm_c > [id^="post_"]');
if (listItem.length < 1) return
listItem.forEach(function(item){ // 遍历所有回复
menu_value('menu_customBlockUsers').forEach(function(item1){ // 遍历用户黑名单
@@ -326,7 +328,7 @@
// 自定义屏蔽关键词(帖子标题)
function customBlockKeywords() {
let nowBlockKeywords = '';
- GM_getValue('menu_customBlockKeywords').forEach(function(item){nowBlockKeywords = nowBlockKeywords + '|' + item})
+ GM_getValue('menu_customBlockKeywords').forEach(function(item){nowBlockKeywords += '|' + item})
let newBlockKeywords = prompt('编辑 [自定义屏蔽关键词],刷新网页后生效\n(不同关键词之间使用 "|" 分隔,\n(例如:助力|互助|互点,如果只有一个就不需要 "|" 了。', nowBlockKeywords.replace('|',''));
if (newBlockKeywords === '') {
GM_setValue('menu_customBlockKeywords', []);
@@ -707,4 +709,12 @@
}
}(i);
}
+
+
+ // 通过 Cookie 来判断是否登录
+ function getLoginStatus() {
+ let cookie = document.cookie.split(';');
+ for (let i=0; i
Date: Sat, 31 Jul 2021 11:14:09 +0800
Subject: [PATCH 0051/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E8=84=9A?=
=?UTF-8?q?=E6=9C=AC=E8=8F=9C=E5=8D=95=E5=9B=BE=E6=A0=87=EF=BC=88=E4=B8=8A?=
=?UTF-8?q?=E6=AC=A1=E5=BF=98=E8=AE=B0=E9=80=92=E5=A2=9E=E7=89=88=E6=9C=AC?=
=?UTF-8?q?=E5=8F=B7=E4=BA=86=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
3dm-Enhanced.user.js | 2 +-
52pojie-Beautification.user.js | 2 +-
52pojie-Enhanced.user.js | 2 +-
Lanzou-Enhanced.user.js | 2 +-
V2ex-Enhanced.user.js | 2 +-
Zhiyoo-Enhanced.user.js | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/3dm-Enhanced.user.js b/3dm-Enhanced.user.js
index 1ab45edda..740199387 100644
--- a/3dm-Enhanced.user.js
+++ b/3dm-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 3DM论坛增强
-// @version 1.0.8
+// @version 1.0.9
// @author X.I.U
// @description 自动回复、自动无缝翻页、清理置顶帖子、自动滚动至隐藏内容
// @match *://bbs.3dmgame.com/*
diff --git a/52pojie-Beautification.user.js b/52pojie-Beautification.user.js
index b73eaae2e..a966552ed 100644
--- a/52pojie-Beautification.user.js
+++ b/52pojie-Beautification.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 吾爱破解论坛美化
-// @version 1.0.0
+// @version 1.0.1
// @author X.I.U
// @description 精简多余内容、样式优化
// @match *://www.52pojie.cn/*
diff --git a/52pojie-Enhanced.user.js b/52pojie-Enhanced.user.js
index 1cca2e6d9..59336a6f4 100644
--- a/52pojie-Enhanced.user.js
+++ b/52pojie-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 吾爱破解论坛增强 - 自动签到、翻页
-// @version 1.2.9
+// @version 1.3.0
// @author X.I.U
// @description 自动签到、自动无缝翻页、屏蔽导读悬赏贴(最新发表页)
// @match *://www.52pojie.cn/*
diff --git a/Lanzou-Enhanced.user.js b/Lanzou-Enhanced.user.js
index 1fa25d67d..1e4db9c11 100644
--- a/Lanzou-Enhanced.user.js
+++ b/Lanzou-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 蓝奏云网盘增强
-// @version 1.2.7
+// @version 1.2.8
// @author X.I.U
// @description 刷新不回根目录、后退返回上一级、右键文件显示菜单、自动显示更多文件、自动打开分享链接、自动复制分享链接、带密码的分享链接自动输密码、拖入文件自动显示上传框、输入密码后回车确认、调整描述(话说)编辑框初始大小
// @match *://*.lanzous.com/*
diff --git a/V2ex-Enhanced.user.js b/V2ex-Enhanced.user.js
index 9d4dcabdd..2990d69b5 100644
--- a/V2ex-Enhanced.user.js
+++ b/V2ex-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name V2EX 增强
-// @version 1.0.9
+// @version 1.1.0
// @author X.I.U
// @description 自动签到、链接转图片、自动无缝翻页、回到顶部(右键点击两侧空白处)、快速回复(左键双击两侧空白处)、新标签页打开链接、标签页伪装为 Github(摸鱼)
// @match *://v2ex.com/*
diff --git a/Zhiyoo-Enhanced.user.js b/Zhiyoo-Enhanced.user.js
index 87dd36082..ad0f0cae1 100644
--- a/Zhiyoo-Enhanced.user.js
+++ b/Zhiyoo-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 智友邦论坛增强
-// @version 1.1.8
+// @version 1.1.9
// @author X.I.U
// @description 自动签到、自动回复、自动无缝翻页、回到顶部(右键点击两侧空白处)、清理置顶帖子、简化附件兑换/下载、清理帖子标题〖XXX〗【XXX】文字
// @icon http://bbs.zhiyoo.net/favicon.ico
From 2ae30ef0af211b2d7d1aee16bfdbcee0b7b2dda8 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 31 Jul 2021 11:16:31 +0800
Subject: [PATCH 0052/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E8=84=9A?=
=?UTF-8?q?=E6=9C=AC=E8=8F=9C=E5=8D=95=E5=9B=BE=E6=A0=87=EF=BC=88=E4=B8=8A?=
=?UTF-8?q?=E6=AC=A1=E5=BF=98=E8=AE=B0=E9=80=92=E5=A2=9E=E7=89=88=E6=9C=AC?=
=?UTF-8?q?=E5=8F=B7=E4=BA=86=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
52pojie-Beautification.user.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/52pojie-Beautification.user.js b/52pojie-Beautification.user.js
index a966552ed..4355f07ff 100644
--- a/52pojie-Beautification.user.js
+++ b/52pojie-Beautification.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 吾爱破解论坛美化
-// @version 1.0.1
+// @version 1.0.8
// @author X.I.U
// @description 精简多余内容、样式优化
// @match *://www.52pojie.cn/*
From c65dfe897493bf4561d8bba9daa15915082e4540 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 31 Jul 2021 16:40:19 +0800
Subject: [PATCH 0053/2070] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20=E7=9F=A5?=
=?UTF-8?q?=E4=B9=8E=E5=85=AC=E5=BC=8F=E5=9B=BE=E7=89=87=E6=B2=A1=E6=9C=89?=
=?UTF-8?q?=E5=8F=8D=E8=89=B2=E7=9A=84=E9=97=AE=E9=A2=98=EF=BC=88=E4=BB=85?=
=?UTF-8?q?=E9=99=90=E5=8F=8D=E8=89=B2=E7=9A=84=E6=9A=97=E9=BB=91=E6=A8=A1?=
=?UTF-8?q?=E5=BC=8F=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DarkMode.user.js | 8 ++++----
Zhihu-Beautification.user.js | 6 +++---
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/DarkMode.user.js b/DarkMode.user.js
index 4506049cd..5cb30f1db 100644
--- a/DarkMode.user.js
+++ b/DarkMode.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 护眼模式
-// @version 1.2.3
+// @version 1.2.4
// @author X.I.U
// @description 简单有效的全网通用护眼模式、夜间模式、暗黑模式
// @match *://*/*
@@ -24,8 +24,8 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
-'use strict';
(function() {
+ 'use strict';
var menu_ALL = [
['menu_disable', '✅ 已启用 (点击对当前网站禁用)', '❎ 已禁用 (点击对当前网站启用)', []],
['menu_runDuringTheDay', '白天保持开启 (比晚上亮一点点)', '白天保持开启', true],
@@ -272,8 +272,8 @@
style_21_firefox = `html {filter: brightness(${style_20[0]}%) sepia(${style_20[1]}%) !important; background-image: url();}`,
style_22 = `html {filter: brightness(${style_20[2]}%) sepia(${style_20[3]}%) !important;}`,
style_22_firefox = `html {filter: brightness(${style_20[2]}%) sepia(${style_20[3]}%) !important; background-image: url();}`,
- style_31 = `html {filter: invert(${style_30[0]}%) !important;} img, video {filter: invert(1) !important;} .mode-fullscreen video {filter: none !important;}`,
- style_31_firefox = `html {filter: invert(${style_30[0]}%) !important; background-image: url();} img, video {filter: invert(1) !important;}`;
+ style_31 = `html {filter: invert(${style_30[0]}%) !important;} img, video {filter: invert(1) !important;}.mode-fullscreen video, img[alt="[公式]"] {filter: none !important;}`,
+ style_31_firefox = `html {filter: invert(${style_30[0]}%) !important; background-image: url();} img, video {filter: invert(1) !important;} .mode-fullscreen video, img[alt="[公式]"] {filter: none !important;}`;
// Firefox 浏览器需要特殊对待
if (navigator.userAgent.toLowerCase().indexOf('firefox') > -1) {
diff --git a/Zhihu-Beautification.user.js b/Zhihu-Beautification.user.js
index 5c75b5dd6..93cc26bbb 100644
--- a/Zhihu-Beautification.user.js
+++ b/Zhihu-Beautification.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 知乎美化
-// @version 1.2.7
+// @version 1.2.8
// @author X.I.U
// @description 宽屏显示、暗黑模式(4种)、隐藏文章开头大图、调整图片最大高度、向下翻时自动隐藏顶栏、文章编辑页面与实际文章宽度一致、屏蔽登录提示
// @match *://www.zhihu.com/*
@@ -19,8 +19,8 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
-'use strict';
(function() {
+ 'use strict';
var menu_ALL = [
['menu_widescreenDisplay', '宽屏显示', '宽屏显示', true],
['menu_darkMode', '暗黑模式', '暗黑模式', true],
@@ -278,7 +278,7 @@ html[data-theme=dark] div#zh-hovercard a {color: #353535 !important;}
html {filter: invert(80%) !important;}
img, .ZVideoItem-video, .ZVideo-video {filter: invert(1) !important;}
.GifPlayer img, .GifPlayer.isPlaying video {filter: invert(1) !important;}
-.GifPlayer.isPlaying img.ztext-gif.GifPlayer-gif2mp4Image {filter: none !important;}
+.GifPlayer.isPlaying img.ztext-gif.GifPlayer-gif2mp4Image, img[alt="[公式]"] {filter: none !important;}
`,
style_darkMode_2_firefox = `/* 暗黑模式(方案 2) */
html {filter: invert(80%) !important; background-image: url();}
From c99520b9d4b249d6dcdb0dac710bbba136bc0ba9 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 31 Jul 2021 21:42:30 +0800
Subject: [PATCH 0054/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Hostloc-Enhanced.user.js | 20 ++++++++++++++------
1 file changed, 14 insertions(+), 6 deletions(-)
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index c0b72ad42..bed296967 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 全球主机交流论坛增强
-// @version 1.3.1
+// @version 1.3.2
// @author X.I.U
// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、回帖小尾巴、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
// @match *://hostloc.com/*
@@ -20,8 +20,8 @@
// @homepageURL https://github.com/XIU2/UserScript
// ==/UserScript==
-'use strict';
(function() {
+ 'use strict';
var menu_ALL = [
['menu_autoSignIn', '自动签到', '自动签到', true],
['menu_reAutoSignIn', '重新签到', '重新签到', ''],
@@ -418,7 +418,9 @@
if (e.target.innerHTML && e.target.innerHTML.indexOf('id="vfastpost"') > -1) {
let message = e.target.querySelector('input[name="message"]'), id = message.id.match(/\d+/g)[0];
message.parentNode.innerHTML = ``
- document.getElementById(`vreplysubmit_${id}`).onclick = function(){document.getElementById(`vmessage_${id}`).value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
+ document.getElementById(`vreplysubmit_${id}`).onclick = function(){
+ if (GM_getValue('menu_customLittleTail')) document.getElementById(`vmessage_${id}`).value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');
+ }
}
}
document.addEventListener('DOMNodeInserted', vfastpost); // 监听插入事件
@@ -427,20 +429,26 @@
function littleTail_1() {
let floatlayout_reply = e => {
if (e.target.innerHTML && e.target.innerHTML.indexOf('id="floatlayout_reply"') > -1) {
- document.getElementById('postsubmit').onclick = function(){document.getElementById('postmessage').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
+ document.getElementById('postsubmit').onclick = function(){
+ if (GM_getValue('menu_customLittleTail')) document.getElementById('postmessage').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');
+ }
}
}
document.addEventListener('DOMNodeInserted', floatlayout_reply); // 监听插入事件
}
function littleTail_2() { // 帖子底部的回复框
- document.getElementById('fastpostsubmit').onclick = function(){document.getElementById('fastpostmessage').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
+ document.getElementById('fastpostsubmit').onclick = function(){
+ if (GM_getValue('menu_customLittleTail')) document.getElementById('fastpostmessage').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');
+ }
}
function littleTail_3() {
let postsubmit = document.getElementById('postsubmit');
if (postsubmit && postsubmit.innerText === '\n参与/回复主题\n' || postsubmit && postsubmit.innerText === '\n发表帖子\n') {
- postsubmit.onclick = function(){document.getElementById('e_textarea').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
+ postsubmit.onclick = function(){
+ if (GM_getValue('menu_customLittleTail')) document.getElementById('e_textarea').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');
+ }
}
}
}
From 509fa6ca31ed167242505b19865c52434aa1bd74 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Mon, 2 Aug 2021 13:08:45 +0800
Subject: [PATCH 0055/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20=E5=AF=B9=20Disc?=
=?UTF-8?q?uz!=20=E8=AE=BA=E5=9D=9B=E7=9A=84=20[=E5=AF=BC=E8=AF=BB?=
=?UTF-8?q?=E3=80=81=E6=B7=98=E5=B8=96=E3=80=81=E6=88=91=E7=9A=84=E5=B8=96?=
=?UTF-8?q?=E5=AD=90/=E5=9B=9E=E5=A4=8D=E3=80=81=E5=88=AB=E4=BA=BA?=
=?UTF-8?q?=E7=9A=84=E5=B8=96=E5=AD=90/=E5=9B=9E=E5=A4=8D]=20=E6=94=AF?=
=?UTF-8?q?=E6=8C=81;=20=E4=BC=98=E5=8C=96=20Discuz!=20=E8=AE=BA=E5=9D=9B?=
=?UTF-8?q?=E6=A3=80=E6=B5=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 111 ++++++++++++++++++++++++++++++++---------------
1 file changed, 76 insertions(+), 35 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 9ba846c67..876dfd6da 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.3.5
+// @version 1.3.6
// @author X.I.U
// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、微博评论、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed、AfreecaTV...
// @match *://*/*
@@ -43,11 +43,11 @@
GM_registerMenuCommand('❎ 已禁用 (点击对当前网站启用)', function(){menu_disable('del')});
return
} else {
- if (websiteList.indexOf(location.host) > -1 || document.querySelector('meta[name="author"][content*="Discuz!"]')) {
+ if (websiteList.indexOf(location.host) > -1 || document.querySelector('meta[name="author"][content*="Discuz!"], meta[name="generator"][content*="Discuz!"]')) {
GM_registerMenuCommand('✅ 已启用 (点击对当前网站禁用)', function(){menu_disable('add')});
} else {
-
- GM_registerMenuCommand('❌ 当前网站暂不支持,请点击下方选项申请支持~');
+ GM_registerMenuCommand('❌ 当前网站暂不支持 [点击申请支持]', function () {window.GM_openInTab('https://github.com/XIU2/UserScript#xiu2userscript', {active: true,insert: true,setParent: true});window.GM_openInTab('https://greasyfork.org/zh-CN/scripts/419215/feedback', {active: true,insert: true,setParent: true});});
+ return
}
}
GM_registerMenuCommand('💬 反馈 & 欢迎申请支持', function () {window.GM_openInTab('https://github.com/XIU2/UserScript#xiu2userscript', {active: true,insert: true,setParent: true});window.GM_openInTab('https://greasyfork.org/zh-CN/scripts/419215/feedback', {active: true,insert: true,setParent: true});});
@@ -104,8 +104,41 @@
scrollDelta: 1000
}
},
- _423down_postslist: {
+ discuz_guide: {
SiteTypeID: 4,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;div#threadlist div.bm_c table > tbody',
+ HT_insert: ['css;div#threadlist div.bm_c table', 3],
+ replaceE: 'css;div.pg',
+ scrollDelta: 1000
+ }
+ },
+ discuz_youspace: {
+ SiteTypeID: 5,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;tbody > tr:not(.th)',
+ HT_insert: ['css;tbody', 3],
+ replaceE: 'css;div.pg',
+ scrollDelta: 1000
+ }
+ },
+ discuz_collection: {
+ SiteTypeID: 6,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;div#ct div.bm_c table > tbody',
+ HT_insert: ['css;div#ct div.bm_c table', 3],
+ replaceE: 'css;div.pg',
+ scrollDelta: 1000
+ }
+ },
+ _423down_postslist: {
+ SiteTypeID: 7,
pager: {
type: 1,
nextLink: '//div[@class="paging"]//a[contains(text(),"下一页")][@href]',
@@ -116,7 +149,7 @@
}
},
apphot_postslist: {
- SiteTypeID: 5,
+ SiteTypeID: 8,
pager: {
type: 1,
nextLink: '//div[@class="pagination"]//a[contains(text(),"下一页")][@href]',
@@ -127,7 +160,7 @@
}
},
iao_su_postslist: {
- SiteTypeID: 6,
+ SiteTypeID: 9,
pager: {
type: 1,
nextLink: '//li[@class="btn btn-primary next"]//a[@href]',
@@ -141,7 +174,7 @@
}
},
appinn_postslist: {
- SiteTypeID: 7,
+ SiteTypeID: 10,
pager: {
type: 1,
nextLink: '//a[@class="next page-numbers"][@href]',
@@ -152,7 +185,7 @@
}
},
iplaysoft_postslist: {
- SiteTypeID: 8,
+ SiteTypeID: 11,
pager: {
type: 1,
nextLink: '//div[@class="pagenavi"]//a[@title="下一页"][@href]',
@@ -166,7 +199,7 @@
}
},
iplaysoft_postcomments: {
- SiteTypeID: 9,
+ SiteTypeID: 12,
pager: {
type: 2,
nextLink: '#loadHistoryComments',
@@ -175,7 +208,7 @@
}
},
pubmed_postslist: {
- SiteTypeID: 10,
+ SiteTypeID: 13,
pager: {
type: 2,
nextLink: 'button.load-button.next-page',
@@ -184,7 +217,7 @@
}
},
wall_alphacoders: {
- SiteTypeID: 11,
+ SiteTypeID: 14,
pager: {
type: 1,
nextLink: '//a[@id="next_page"][@href]',
@@ -195,7 +228,7 @@
}
},
art_alphacoders: {
- SiteTypeID: 12,
+ SiteTypeID: 15,
pager: {
type: 1,
nextLink: '//a[@id="next_page"][@href]',
@@ -209,7 +242,7 @@
}
},
fitgirl: {
- SiteTypeID: 13,
+ SiteTypeID: 16,
pager: {
type: 1,
nextLink: '//a[@class="next page-numbers"][@href]',
@@ -220,7 +253,7 @@
}
},
weidown: {
- SiteTypeID: 14,
+ SiteTypeID: 17,
pager: {
type: 1,
nextLink: '//a[@class="nextpage"][@href]',
@@ -231,7 +264,7 @@
}
},
weidown_search: {
- SiteTypeID: 14,
+ SiteTypeID: 18,
pager: {
type: 1,
nextLink: '//a[@class="nextpage"][@href]',
@@ -242,7 +275,7 @@
}
},
weidown_special: {
- SiteTypeID: 14,
+ SiteTypeID: 19,
pager: {
type: 1,
nextLink: '//a[@class="nextpage"][@href]',
@@ -253,7 +286,7 @@
}
},
douban_subject_comments: {
- SiteTypeID: 15,
+ SiteTypeID: 20,
pager: {
type: 1,
nextLink: '//a[@class="next"][@href]',
@@ -264,7 +297,7 @@
}
},
douban_subject_reviews: {
- SiteTypeID: 16,
+ SiteTypeID: 21,
pager: {
type: 1,
nextLink: '//link[@rel="next"][@href]',
@@ -275,7 +308,7 @@
}
},
douban_subject_episode: {
- SiteTypeID: 17,
+ SiteTypeID: 22,
pager: {
type: 1,
nextLink: '//link[@rel="next"][@href]',
@@ -286,7 +319,7 @@
}
},
douban_search: {
- SiteTypeID: 18,
+ SiteTypeID: 23,
pager: {
type: 1,
nextLink: '//a[@class="next"][@href]',
@@ -297,7 +330,7 @@
}
},
_3dmgame: {
- SiteTypeID: 19,
+ SiteTypeID: 24,
pager: {
type: 3,
nextLink: '//li[@class="next"]/a[@href]',
@@ -309,7 +342,7 @@
}
},
gamersky_ent: {
- SiteTypeID: 20,
+ SiteTypeID: 25,
pager: {
type: 3,
nextLink: '//div[@class="page_css"]/a[text()="下一页"][@href]',
@@ -321,7 +354,7 @@
}
},
gamersky_gl: {
- SiteTypeID: 21,
+ SiteTypeID: 26,
pager: {
type: 3,
nextLink: '//div[@class="page_css"]/a[text()="下一页"][@href]',
@@ -333,7 +366,7 @@
}
},
ali213_www: {
- SiteTypeID: 22,
+ SiteTypeID: 27,
pager: {
type: 3,
nextLink: '//a[@id="after_this_page"][@href]',
@@ -345,7 +378,7 @@
}
},
ali213_gl: {
- SiteTypeID: 23,
+ SiteTypeID: 28,
pager: {
type: 3,
nextLink: '//a[@class="next n"][@href]',
@@ -357,7 +390,7 @@
}
},
_58pic: {
- SiteTypeID: 24,
+ SiteTypeID: 29,
pager: {
type: 1,
nextLink: '//div[contains(@class,"page-box")]//a[text()="下一页"][@href]',
@@ -371,7 +404,7 @@
}
},
_58pic_c: {
- SiteTypeID: 25,
+ SiteTypeID: 30,
pager: {
type: 1,
nextLink: '//div[contains(@class,"page-box")]//a[text()="下一页"][@href]',
@@ -385,7 +418,7 @@
}
},
rarbgprx: {
- SiteTypeID: 26,
+ SiteTypeID: 31,
pager: {
type: 1,
nextLink: '(//a[@title="next page"])[1][@href]',
@@ -396,7 +429,7 @@
}
},
yxssp: {
- SiteTypeID: 27,
+ SiteTypeID: 32,
pager: {
type: 1,
nextLink: '//div[@class="page-nav td-pb-padding-side"]/a[last()][@href]',
@@ -407,7 +440,7 @@
}
},
yuankongjian: {
- SiteTypeID: 28,
+ SiteTypeID: 33,
pager: {
type: 2,
nextLink: 'button[title="加载更多"]',
@@ -416,7 +449,7 @@
}
},
weibo_comment: {
- SiteTypeID: 29,
+ SiteTypeID: 34,
pager: {
type: 2,
nextLink: 'a[action-type="click_more_comment"]',
@@ -425,7 +458,7 @@
}
},
afreecatv: {
- SiteTypeID: 30,
+ SiteTypeID: 35,
pager: {
type: 2,
nextLink: '.btn-more > button',
@@ -534,7 +567,7 @@
case "www.afreecatv.com":
curSite = DBSite.afreecatv;
break;
- default: // < Discuz! 论坛专用 >
+ default: // < Discuz! 论坛专用 >
if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
curSite = DBSite.discuz_forum;
@@ -550,8 +583,16 @@
} else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内
curSite = DBSite.discuz_thread;
hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ } else if (location.search.indexOf('mod=guide') > -1) { // 导读帖子列表
+ curSite = DBSite.discuz_guide;
+ } else if(location.search.indexOf('mod=space') > -1 && location.search.indexOf('&view=me') > -1) { // 别人的主题/回复
+ curSite = DBSite.discuz_youspace;
+ } else if (location.search.indexOf('mod=collection') > -1) { // 淘贴列表
+ curSite = DBSite.discuz_collection;
} else if (location.pathname.indexOf('search') > -1) { // 搜索结果
curSite = DBSite.discuz_search;
+ } else { // 考虑到部分论坛的部分板块帖子列表 URL 是自定义的
+ curSite = DBSite.discuz_forum;
}
}
}
@@ -571,7 +612,7 @@
let scrollElement = document.querySelector(curSite.pager.scrollElement);
//console.log(scrollElement.offsetTop - (scrollTop + scrollHeight), scrollDelta, curSite.SiteTypeID)
if (scrollElement.offsetTop - (scrollTop + scrollHeight) <= scrollDelta) {
- if (curSite.SiteTypeID === 21) curSite.pager.scrollDelta -= 800 // 游民星空的比较奇葩,需要特殊处理下
+ if (curSite.SiteTypeID === 25) curSite.pager.scrollDelta -= 800 // 游民星空的比较奇葩,需要特殊处理下
ShowPager.loadMorePage();
}
} else {
From b21094221cf39bffeeba3b275ff213d35cff4f49 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Mon, 2 Aug 2021 13:09:45 +0800
Subject: [PATCH 0056/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E8=87=AA?=
=?UTF-8?q?=E5=8A=A8=E6=97=A0=E7=BC=9D=E7=BF=BB=E9=A1=B5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
3dm-Enhanced.user.js | 56 ++++++++++++++++++++++++++++++++--------
52pojie-Enhanced.user.js | 56 ++++++++++++++++++++++++----------------
Hostloc-Enhanced.user.js | 28 ++++++--------------
3 files changed, 87 insertions(+), 53 deletions(-)
diff --git a/3dm-Enhanced.user.js b/3dm-Enhanced.user.js
index 740199387..da01b7253 100644
--- a/3dm-Enhanced.user.js
+++ b/3dm-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 3DM论坛增强
-// @version 1.0.9
+// @version 1.1.0
// @author X.I.U
// @description 自动回复、自动无缝翻页、清理置顶帖子、自动滚动至隐藏内容
// @match *://bbs.3dmgame.com/*
@@ -105,19 +105,37 @@
thread: {
SiteTypeID: 2,
pager: {
- nextLink: '//div[@id="pgt"]//a[contains(text(),"下一页")][@href]',
+ nextLink: '//a[@class="nxt"][@href]',
pageElement: 'css;div#postlist > div[id^="post_"]',
HT_insert: ['css;div#postlist', 2],
- replaceE: '//div[@class="pg"] | //div[@class="pgbtn"]',
+ replaceE: 'css;div.pg'
}
},
- guide: {
+ search: {
SiteTypeID: 3,
pager: {
- nextLink: '//div[@id="pgt"]//a[contains(text(),"下一页")][@href]',
- pageElement: 'css;div#threadlist div.bm_c table > tbody[id^="normalthread_"]',
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;div#threadlist > ul',
+ HT_insert: ['css;div#threadlist', 2],
+ replaceE: 'css;div.pg'
+ }
+ },
+ guide: {
+ SiteTypeID: 4,
+ pager: {
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;div#threadlist div.bm_c table > tbody',
HT_insert: ['css;div#threadlist div.bm_c table', 2],
- replaceE: 'css;div.pg',
+ replaceE: 'css;div.pg'
+ }
+ },
+ youspace: {
+ SiteTypeID: 5,
+ pager: {
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;tbody > tr:not(.th)',
+ HT_insert: ['css;tbody', 2],
+ replaceE: 'css;div.pg'
}
}
};
@@ -134,22 +152,30 @@
// URL 匹配正则表达式
let patt_thread = /\/thread-\d+-\d+\-\d+.html/,
- patt_forum = /\/forum-\d+-\d+\.html/,
- patt_guide = /mod\=guide\&view\=(hot|digest)/
+ patt_forum = /\/forum-\d+-\d+\.html/
// URL 判断
if (patt_thread.test(location.pathname) || location.search.indexOf('mod=viewthread') > -1){
// 帖子内
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
if(menu_value('menu_thread_pageLoading'))curSite = DBSite.thread;
if(menu_value('menu_autoReply'))autoReply(); // 如果有隐藏内容,则自动回复
if(menu_value('menu_scrollToShowhide'))setTimeout(function(){window.scrollTo(0,document.querySelector('.showhide').offsetTop)}, 500); // 滚动至隐藏内容
- }else if (patt_forum.test(location.pathname) || location.search.indexOf('mod=forumdisplay') > -1){
+ } else if (patt_forum.test(location.pathname) || location.search.indexOf('mod=forumdisplay') > -1){
// 各板块帖子列表
curSite = DBSite.forum;
if(menu_value('menu_cleanTopPost'))cleanTopPost(); // 清理置顶帖子
- }else if (patt_guide.test(location.search)){
+ } else if (location.search.indexOf('mod=guide') > -1){
// 导读帖子列表
curSite = DBSite.guide;
+ } else if (location.pathname === '/search.php') {
+ // 搜索结果列表
+ curSite = DBSite.search;
+ } else if(location.search.indexOf('mod=space') > -1 && location.search.indexOf('&view=me') > -1) {
+ // 别人的主题/回复
+ curSite = DBSite.youspace;
+ } else {
+ curSite = DBSite.forum;
}
pageLoading(); // 自动翻页
@@ -237,6 +263,14 @@
}
+ // 隐藏帖子内的 [下一页] 按钮
+ function hidePgbtn() {
+ let style_hidePgbtn = document.createElement('style');
+ style_hidePgbtn.innerHTML = `.pgbtn {display: none;}`;
+ document.head.appendChild(style_hidePgbtn);
+ }
+
+
// 滚动条事件
function windowScroll(fn1) {
var beforeScrollTop = document.documentElement.scrollTop,
diff --git a/52pojie-Enhanced.user.js b/52pojie-Enhanced.user.js
index 59336a6f4..e4d7c4195 100644
--- a/52pojie-Enhanced.user.js
+++ b/52pojie-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 吾爱破解论坛增强 - 自动签到、翻页
-// @version 1.3.0
+// @version 1.3.1
// @author X.I.U
// @description 自动签到、自动无缝翻页、屏蔽导读悬赏贴(最新发表页)
// @match *://www.52pojie.cn/*
@@ -90,63 +90,73 @@
SiteTypeID: 2,
pager: {
type: 1,
- nextLink: '//div[@id="pgt"]//a[contains(text(),"下一页")][@href]',
+ nextLink: '//a[@class="nxt"][@href]',
pageElement: 'css;div#postlist > div[id^="post_"]',
HT_insert: ['css;div#postlist', 2],
replaceE: 'css;div.pg',
scrollDelta: 766
}
},
- guide: {
+ search: {
SiteTypeID: 3,
pager: {
type: 1,
- nextLink: '//div[@id="pgt"]//a[contains(text(),"下一页")][@href]',
- pageElement: 'css;div#threadlist div.bm_c table > tbody[id^="normalthread_"]',
- HT_insert: ['css;div#threadlist div.bm_c table', 2],
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;div#threadlist > ul',
+ HT_insert: ['css;div#threadlist', 2],
replaceE: 'css;div.pg',
scrollDelta: 766
}
},
- collection: {
+ guide: {
SiteTypeID: 4,
pager: {
type: 1,
- nextLink: '//div[@class="pg"]//a[contains(text(),"下一页")][@href]',
- pageElement: 'css;div#ct div.bm_c table > tbody',
- HT_insert: ['css;div#ct div.bm_c table', 2],
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;div#threadlist div.bm_c table > tbody',
+ HT_insert: ['css;div#threadlist div.bm_c table', 2],
replaceE: 'css;div.pg',
- scrollDelta: 899
+ scrollDelta: 766
}
},
- favorite: {
+ youspace: {
SiteTypeID: 5,
pager: {
type: 1,
nextLink: '//a[@class="nxt"][@href]',
- pageElement: 'css;ul#favorite_ul > li',
- HT_insert: ['css;ul#favorite_ul', 2],
+ pageElement: 'css;tbody > tr:not(.th)',
+ HT_insert: ['css;tbody', 2],
replaceE: 'css;div.pg',
- scrollDelta: 899
+ scrollDelta: 1000
}
},
- search: {
+ collection: {
SiteTypeID: 6,
pager: {
type: 1,
nextLink: '//a[@class="nxt"][@href]',
- pageElement: 'css;div#threadlist > ul',
- HT_insert: ['css;div#threadlist', 2],
+ pageElement: 'css;div#ct div.bm_c table > tbody',
+ HT_insert: ['css;div#ct div.bm_c table', 2],
replaceE: 'css;div.pg',
- scrollDelta: 766
+ scrollDelta: 899
+ }
+ },
+ favorite: {
+ SiteTypeID: 7,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="nxt"][@href]',
+ pageElement: 'css;ul#favorite_ul > li',
+ HT_insert: ['css;ul#favorite_ul', 2],
+ replaceE: 'css;div.pg',
+ scrollDelta: 899
}
}
};
// URL 匹配正则表达式
let patt_thread = /\/thread-\d+-\d+\-\d+.html/,
- patt_forum = /\/forum-\d+-\d+\.html/,
- patt_guide = /mod\=guide\&view\=(hot|digest|new|newthread|my|tech|help)/
+ patt_forum = /\/forum-\d+-\d+\.html/
// URL 判断
if (patt_thread.test(location.pathname) || location.search.indexOf('mod=viewthread') > -1) {
@@ -156,7 +166,7 @@
}
} else if (patt_forum.test(location.pathname) || location.search.indexOf('mod=forumdisplay') > -1) {
curSite = DBSite.forum; // 各板块帖子列表
- } else if (patt_guide.test(location.search)) {
+ } else if (location.search.indexOf('mod=guide') > -1) {
curSite = DBSite.guide; // 导读帖子列表
delateReward(); // 屏蔽导读悬赏贴(最新发表)
} else if (location.search.indexOf('mod=collection') > -1) {
@@ -165,6 +175,8 @@
curSite = DBSite.favorite; // 收藏列表
} else if (location.pathname === '/search.php') {
curSite = DBSite.search; // 搜索结果列表
+ } else if(location.search.indexOf('mod=space') > -1 && location.search.indexOf('&view=me') > -1) { // 别人的主题/回复
+ curSite = DBSite.youspace;
}
curSite.pageUrl = ""; // 下一页URL
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index bed296967..9142e75a0 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 全球主机交流论坛增强
-// @version 1.3.2
+// @version 1.3.3
// @author X.I.U
// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、回帖小尾巴、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
// @match *://hostloc.com/*
@@ -113,17 +113,8 @@
replaceE: 'css;div.pg',
}
},
- guide: {
- SiteTypeID: 3,
- pager: {
- nextLink: '//a[@class="nxt"][@href]',
- pageElement: 'css;div#threadlist div.bm_c table > tbody[id^="normalthread_"]',
- HT_insert: ['css;div#threadlist div.bm_c table', 2],
- replaceE: 'css;div.pg',
- }
- },
search: {
- SiteTypeID: 4,
+ SiteTypeID: 3,
pager: {
nextLink: '//a[@class="nxt"][@href]',
pageElement: 'css;div#threadlist > ul',
@@ -131,10 +122,10 @@
replaceE: 'css;div.pg'
}
},
- myreply: {
+ guide: {
SiteTypeID: 4,
pager: {
- nextLink: '(//a[@class="nxt"])[1][@href]',
+ nextLink: '//a[@class="nxt"][@href]',
pageElement: 'css;div#threadlist div.bm_c table > tbody',
HT_insert: ['css;div#threadlist div.bm_c table', 2],
replaceE: 'css;div.pg',
@@ -144,7 +135,7 @@
SiteTypeID: 5,
pager: {
nextLink: '//a[@class="nxt"][@href]',
- pageElement: 'css;tbody > tr',
+ pageElement: 'css;tbody > tr:not(.th)',
HT_insert: ['css;tbody', 2],
replaceE: 'css;div.pg',
}
@@ -161,8 +152,7 @@
// URL 匹配正则表达式
let patt_thread = /\/thread-\d+-\d+\-\d+.html/,
- patt_forum = /\/forum-\d+-\d+\.html/,
- patt_guide = /mod\=guide\&view\=(hot|digest)/
+ patt_forum = /\/forum-\d+-\d+\.html/
// URL 判断
if (patt_thread.test(location.pathname) || location.search.indexOf('mod=viewthread') > -1) { // 帖子内
@@ -183,7 +173,7 @@
vfastpostDOMNodeInserted(); // 监听插入事件(预览快速回复带签名)
littleTail('forum'); // 小尾巴
if (patt_forum.test(location.pathname)) blockDOMNodeInserted(); //监听插入事件(有新的回复主题,点击查看)
- }else if (patt_guide.test(location.search)) { // 导读帖子列表
+ }else if (location.search.indexOf('mod=guide') > -1) { // 导读帖子列表
curSite = DBSite.guide;
} else if(location.pathname === '/search.php') { // 搜索结果列表
curSite = DBSite.search;
@@ -192,9 +182,7 @@
blockUsers('notice'); // 屏蔽用户(黑名单)
} else if(location.pathname === '/home.php' && location.search.indexOf('mod=space&do=pm') > -1) { // 消息(私人聊天)
blockUsers('pm'); // 屏蔽用户(黑名单)
- } else if(location.pathname === '/forum.php' && location.search.indexOf('mod=guide&view=my&type=reply') > -1) { // 我的帖子:回复
- curSite = DBSite.myreply;
- } else if(location.pathname === '/home.php' && location.search.indexOf('&do=thread&view=me') > -1) { // 别人的帖子:回复
+ } else if(location.search.indexOf('mod=space') > -1 && location.search.indexOf('&view=me') > -1) { // 别人的主题/回复
curSite = DBSite.youreply;
} else if(location.pathname === '/forum.php' && location.search.indexOf('mod=post&action=reply') > -1 || location.pathname === '/forum.php' && location.search.indexOf('mod=post&action=newthread') > -1) { // 回复:高级回复
littleTail('reply'); // 小尾巴
From 5f0e59d7c432221246f5baf9e2f987417817d381 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Mon, 2 Aug 2021 15:18:49 +0800
Subject: [PATCH 0057/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E7=99=BB?=
=?UTF-8?q?=E5=BD=95=E6=A3=80=E6=9F=A5=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Hostloc-Enhanced.user.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index 9142e75a0..12fa36a3d 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 全球主机交流论坛增强
-// @version 1.3.3
+// @version 1.3.4
// @author X.I.U
// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、回帖小尾巴、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
// @match *://hostloc.com/*
@@ -710,7 +710,7 @@
// 通过 Cookie 来判断是否登录
function getLoginStatus() {
let cookie = document.cookie.split(';');
- for (let i=0; i
Date: Tue, 3 Aug 2021 17:13:16 +0800
Subject: [PATCH 0058/2070] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20[=E5=8D=83?=
=?UTF-8?q?=E5=9B=BE=E7=BD=91]=20=E7=BF=BB=E9=A1=B5=E5=90=8E=E6=B2=A1?=
=?UTF-8?q?=E6=9C=89=E5=8A=A0=E8=BD=BD=E5=9B=BE=E7=89=87=E7=9A=84=E9=97=AE?=
=?UTF-8?q?=E9=A2=98=EF=BC=88=E7=BD=91=E7=AB=99=E6=9B=B4=E6=96=B0=E4=BA=86?=
=?UTF-8?q?=20URL=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 38 +++++++++++++++++++-------------------
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 876dfd6da..7fb8f45ff 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.3.6
+// @version 1.3.7
// @author X.I.U
// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、微博评论、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed、AfreecaTV...
// @match *://*/*
@@ -656,11 +656,11 @@
// iplaysoft 的插入前函数
function iplaysoft_postslist_beforeFunction(pageElems) {
pageElems.forEach(function (one) {
- let now = one.querySelector("img.lazyload")
+ let now = one.querySelector('img.lazyload')
if (now && !now.getAttribute('src')) {
- now.setAttribute("src",now.getAttribute('data-src'))
- now.setAttribute("srcset",now.getAttribute('data-src'))
- now.setAttribute("class","lazyloaded")
+ now.setAttribute('src',now.getAttribute('data-src'))
+ now.setAttribute('srcset',now.getAttribute('data-src'))
+ now.setAttribute('class','lazyloaded')
}
});
return pageElems
@@ -670,9 +670,9 @@
// iao.su 的插入前函数
function iao_su_postslist_beforeFunction(pageElems) {
pageElems.forEach(function (one) {
- let now = one.getElementsByClassName("post-card")[0]
+ let now = one.getElementsByClassName('post-card')[0]
if (now) {
- now.getElementsByClassName("blog-background")[0].style.backgroundImage = 'url("' + RegExp("(?<=loadBannerDirect\\(').*(?=', '',)").exec(now.getElementsByTagName("script")[0].innerText)[0]; + '")';
+ now.getElementsByClassName('blog-background')[0].style.backgroundImage = 'url("' + RegExp("(?<=loadBannerDirect\\(').*(?=', '',)").exec(now.getElementsByTagName("script")[0].innerText)[0]; + '")';
}
});
return pageElems
@@ -681,10 +681,10 @@
// art_alphacoders
function art_alphacoders_beforeFunction_0() {
- let pageElems1 = document.querySelectorAll(".container-masonry > div")
- document.querySelector(".container-masonry").style.height = "auto"
+ let pageElems1 = document.querySelectorAll('.container-masonry > div')
+ document.querySelector('.container-masonry').style.height = 'auto'
pageElems1.forEach(function (one) {
- one.setAttribute("style","float: left");
+ one.setAttribute('style','float: left');
});
}
@@ -692,23 +692,23 @@
// art_alphacoders 的插入前函数
function art_alphacoders_beforeFunction(pageElems) {
pageElems.forEach(function (one) {
- one.setAttribute("style","float: left");
+ one.setAttribute('style','float: left');
});
return pageElems
}
- // iplaysoft 的插入前函数
+ // 58pic 的插入前函数
function _58pic_beforeFunction(pageElems) {
- let is_one = document.querySelector(".qtw-card.place-box.is-one");
- if (is_one && is_one.style.display != "none") {
- is_one.setAttribute("style", "display: none;")
+ let is_one = document.querySelector('.qtw-card.place-box.is-one');
+ if (is_one && is_one.style.display != 'none') {
+ is_one.setAttribute('style', 'display: none;')
}
pageElems.forEach(function (one) {
- let now = one.querySelector("img.lazy")
- if (now && now.getAttribute('src') === "//icon.qiantucdn.com/static/images/qtw-card/card-place.png") {
- now.setAttribute("src", now.dataset.original)
- now.setAttribute("style", "display: block;")
+ let now = one.querySelector('img.lazy')
+ if (now && now.getAttribute('src') != now.dataset.original) {
+ now.setAttribute('src', now.dataset.original)
+ now.setAttribute('style', 'display: block;')
}
});
return pageElems
From aca302fce56e93d6861f3738a55f0b7cbb5cebe9 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Tue, 3 Aug 2021 18:07:42 +0800
Subject: [PATCH 0059/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E6=89=80?=
=?UTF-8?q?=E6=9C=89=20Flarum=20=E8=AE=BA=E5=9D=9B]=20=E6=94=AF=E6=8C=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 142 ++++++++++++++++++++++++-----------------------
1 file changed, 72 insertions(+), 70 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 7fb8f45ff..2c58c7944 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.3.7
+// @version 1.3.8
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有 Discuz!论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、微博评论、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed、AfreecaTV...
+// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、微博评论、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed、AfreecaTV...
// @match *://*/*
// @exclude *://www.423down.com/*.html
// @exclude *://apphot.cc/*.html
@@ -33,7 +33,6 @@
'rarbgprx.org',
'fitgirl-repacks.site',
'www.yxssp.com',
- 'pan.yuankongjian.com',
'weibo.com',
'www.afreecatv.com'];
@@ -43,7 +42,10 @@
GM_registerMenuCommand('❎ 已禁用 (点击对当前网站启用)', function(){menu_disable('del')});
return
} else {
- if (websiteList.indexOf(location.host) > -1 || document.querySelector('meta[name="author"][content*="Discuz!"], meta[name="generator"][content*="Discuz!"]')) {
+ if (websiteList.indexOf(location.host) > -1 // 其他网站列表
+ || document.querySelector('meta[name="author"][content*="Discuz!"], meta[name="generator"][content*="Discuz!"]') // 所有 Discuz! 论坛
+ || document.getElementById('flarum-loading') // 所有 Flarum 论坛
+ ) {
GM_registerMenuCommand('✅ 已启用 (点击对当前网站禁用)', function(){menu_disable('add')});
} else {
GM_registerMenuCommand('❌ 当前网站暂不支持 [点击申请支持]', function () {window.GM_openInTab('https://github.com/XIU2/UserScript#xiu2userscript', {active: true,insert: true,setParent: true});window.GM_openInTab('https://greasyfork.org/zh-CN/scripts/419215/feedback', {active: true,insert: true,setParent: true});});
@@ -137,8 +139,16 @@
scrollDelta: 1000
}
},
- _423down_postslist: {
+ flarum: {
SiteTypeID: 7,
+ pager: {
+ type: 2,
+ nextLink: '.DiscussionList-loadMore > button[title]',
+ scrollDelta: 1000
+ }
+ },
+ _423down_postslist: {
+ SiteTypeID: 8,
pager: {
type: 1,
nextLink: '//div[@class="paging"]//a[contains(text(),"下一页")][@href]',
@@ -149,7 +159,7 @@
}
},
apphot_postslist: {
- SiteTypeID: 8,
+ SiteTypeID: 9,
pager: {
type: 1,
nextLink: '//div[@class="pagination"]//a[contains(text(),"下一页")][@href]',
@@ -160,7 +170,7 @@
}
},
iao_su_postslist: {
- SiteTypeID: 9,
+ SiteTypeID: 10,
pager: {
type: 1,
nextLink: '//li[@class="btn btn-primary next"]//a[@href]',
@@ -174,7 +184,7 @@
}
},
appinn_postslist: {
- SiteTypeID: 10,
+ SiteTypeID: 11,
pager: {
type: 1,
nextLink: '//a[@class="next page-numbers"][@href]',
@@ -185,7 +195,7 @@
}
},
iplaysoft_postslist: {
- SiteTypeID: 11,
+ SiteTypeID: 12,
pager: {
type: 1,
nextLink: '//div[@class="pagenavi"]//a[@title="下一页"][@href]',
@@ -199,7 +209,7 @@
}
},
iplaysoft_postcomments: {
- SiteTypeID: 12,
+ SiteTypeID: 13,
pager: {
type: 2,
nextLink: '#loadHistoryComments',
@@ -208,7 +218,7 @@
}
},
pubmed_postslist: {
- SiteTypeID: 13,
+ SiteTypeID: 14,
pager: {
type: 2,
nextLink: 'button.load-button.next-page',
@@ -217,7 +227,7 @@
}
},
wall_alphacoders: {
- SiteTypeID: 14,
+ SiteTypeID: 15,
pager: {
type: 1,
nextLink: '//a[@id="next_page"][@href]',
@@ -228,7 +238,7 @@
}
},
art_alphacoders: {
- SiteTypeID: 15,
+ SiteTypeID: 16,
pager: {
type: 1,
nextLink: '//a[@id="next_page"][@href]',
@@ -242,7 +252,7 @@
}
},
fitgirl: {
- SiteTypeID: 16,
+ SiteTypeID: 17,
pager: {
type: 1,
nextLink: '//a[@class="next page-numbers"][@href]',
@@ -253,7 +263,7 @@
}
},
weidown: {
- SiteTypeID: 17,
+ SiteTypeID: 18,
pager: {
type: 1,
nextLink: '//a[@class="nextpage"][@href]',
@@ -264,7 +274,7 @@
}
},
weidown_search: {
- SiteTypeID: 18,
+ SiteTypeID: 19,
pager: {
type: 1,
nextLink: '//a[@class="nextpage"][@href]',
@@ -275,7 +285,7 @@
}
},
weidown_special: {
- SiteTypeID: 19,
+ SiteTypeID: 20,
pager: {
type: 1,
nextLink: '//a[@class="nextpage"][@href]',
@@ -286,7 +296,7 @@
}
},
douban_subject_comments: {
- SiteTypeID: 20,
+ SiteTypeID: 21,
pager: {
type: 1,
nextLink: '//a[@class="next"][@href]',
@@ -297,7 +307,7 @@
}
},
douban_subject_reviews: {
- SiteTypeID: 21,
+ SiteTypeID: 22,
pager: {
type: 1,
nextLink: '//link[@rel="next"][@href]',
@@ -308,7 +318,7 @@
}
},
douban_subject_episode: {
- SiteTypeID: 22,
+ SiteTypeID: 23,
pager: {
type: 1,
nextLink: '//link[@rel="next"][@href]',
@@ -319,7 +329,7 @@
}
},
douban_search: {
- SiteTypeID: 23,
+ SiteTypeID: 24,
pager: {
type: 1,
nextLink: '//a[@class="next"][@href]',
@@ -330,7 +340,7 @@
}
},
_3dmgame: {
- SiteTypeID: 24,
+ SiteTypeID: 25,
pager: {
type: 3,
nextLink: '//li[@class="next"]/a[@href]',
@@ -342,7 +352,7 @@
}
},
gamersky_ent: {
- SiteTypeID: 25,
+ SiteTypeID: 26,
pager: {
type: 3,
nextLink: '//div[@class="page_css"]/a[text()="下一页"][@href]',
@@ -354,7 +364,7 @@
}
},
gamersky_gl: {
- SiteTypeID: 26,
+ SiteTypeID: 27,
pager: {
type: 3,
nextLink: '//div[@class="page_css"]/a[text()="下一页"][@href]',
@@ -366,7 +376,7 @@
}
},
ali213_www: {
- SiteTypeID: 27,
+ SiteTypeID: 28,
pager: {
type: 3,
nextLink: '//a[@id="after_this_page"][@href]',
@@ -378,7 +388,7 @@
}
},
ali213_gl: {
- SiteTypeID: 28,
+ SiteTypeID: 29,
pager: {
type: 3,
nextLink: '//a[@class="next n"][@href]',
@@ -390,7 +400,7 @@
}
},
_58pic: {
- SiteTypeID: 29,
+ SiteTypeID: 30,
pager: {
type: 1,
nextLink: '//div[contains(@class,"page-box")]//a[text()="下一页"][@href]',
@@ -404,7 +414,7 @@
}
},
_58pic_c: {
- SiteTypeID: 30,
+ SiteTypeID: 31,
pager: {
type: 1,
nextLink: '//div[contains(@class,"page-box")]//a[text()="下一页"][@href]',
@@ -418,7 +428,7 @@
}
},
rarbgprx: {
- SiteTypeID: 31,
+ SiteTypeID: 32,
pager: {
type: 1,
nextLink: '(//a[@title="next page"])[1][@href]',
@@ -429,7 +439,7 @@
}
},
yxssp: {
- SiteTypeID: 32,
+ SiteTypeID: 33,
pager: {
type: 1,
nextLink: '//div[@class="page-nav td-pb-padding-side"]/a[last()][@href]',
@@ -439,15 +449,6 @@
scrollDelta: 900
}
},
- yuankongjian: {
- SiteTypeID: 33,
- pager: {
- type: 2,
- nextLink: 'button[title="加载更多"]',
- nextText: '加载更多',
- scrollDelta: 500
- }
- },
weibo_comment: {
SiteTypeID: 34,
pager: {
@@ -556,44 +557,45 @@
case "rarbgprx.org":
curSite = DBSite.rarbgprx;
break;
- case "pan.yuankongjian.com":
- if (location.pathname.indexOf('/d/') === -1) {
- curSite = DBSite.yuankongjian;
- }
- break;
case "weibo.com":
curSite = DBSite.weibo_comment;
break;
case "www.afreecatv.com":
curSite = DBSite.afreecatv;
break;
- default: // < Discuz! 论坛专用 >
- if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
- if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
- curSite = DBSite.discuz_forum;
- } else if (location.pathname.indexOf('thread') > -1) { // 帖子内
- curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
- }else if(location.pathname.indexOf('search') > -1) { // 搜索结果
- curSite = DBSite.discuz_search;
- }
- } else {
- if (location.search.indexOf('mod=forumdisplay') > -1) { // 各版块帖子列表
- curSite = DBSite.discuz_forum;
- } else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内
- curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
- } else if (location.search.indexOf('mod=guide') > -1) { // 导读帖子列表
- curSite = DBSite.discuz_guide;
- } else if(location.search.indexOf('mod=space') > -1 && location.search.indexOf('&view=me') > -1) { // 别人的主题/回复
- curSite = DBSite.discuz_youspace;
- } else if (location.search.indexOf('mod=collection') > -1) { // 淘贴列表
- curSite = DBSite.discuz_collection;
- } else if (location.pathname.indexOf('search') > -1) { // 搜索结果
- curSite = DBSite.discuz_search;
- } else { // 考虑到部分论坛的部分板块帖子列表 URL 是自定义的
- curSite = DBSite.discuz_forum;
+ default:
+ if (document.querySelector('meta[name="author"][content*="Discuz!"], meta[name="generator"][content*="Discuz!"]')) {
+ // < 所有 Discuz!论坛 >
+ if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
+ if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
+ curSite = DBSite.discuz_forum;
+ } else if (location.pathname.indexOf('thread') > -1) { // 帖子内
+ curSite = DBSite.discuz_thread;
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ }else if(location.pathname.indexOf('search') > -1) { // 搜索结果
+ curSite = DBSite.discuz_search;
+ }
+ } else {
+ if (location.search.indexOf('mod=forumdisplay') > -1) { // 各版块帖子列表
+ curSite = DBSite.discuz_forum;
+ } else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内
+ curSite = DBSite.discuz_thread;
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ } else if (location.search.indexOf('mod=guide') > -1) { // 导读帖子列表
+ curSite = DBSite.discuz_guide;
+ } else if(location.search.indexOf('mod=space') > -1 && location.search.indexOf('&view=me') > -1) { // 别人的主题/回复
+ curSite = DBSite.discuz_youspace;
+ } else if (location.search.indexOf('mod=collection') > -1) { // 淘贴列表
+ curSite = DBSite.discuz_collection;
+ } else if (location.pathname.indexOf('search') > -1) { // 搜索结果
+ curSite = DBSite.discuz_search;
+ } else { // 考虑到部分论坛的部分板块帖子列表 URL 是自定义的
+ curSite = DBSite.discuz_forum;
+ }
}
+ } else if (document.getElementById('flarum-loading') && location.pathname.indexOf('/d/') === -1) {
+ // < 所有 Flarum 论坛 >
+ curSite = DBSite.flarum;
}
}
curSite.pageUrl = ""; // 下一页URL
From 5a23e3b79ea06a8fbc659073a10fc45d0a121c3e Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Tue, 3 Aug 2021 18:14:04 +0800
Subject: [PATCH 0060/2070] README.md
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 9f5a93892..e36c35d8c 100644
--- a/README.md
+++ b/README.md
@@ -22,7 +22,7 @@
| [
](https://www.zhihu.com/people/xiu2) | **知乎 增强** | **移除登录弹窗**、一键收起回答、屏蔽用户、屏蔽关键词、快... | **[安装](https://greasyfork.org/zh-CN/scripts/419081)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhihu-Enhanced.user.js)** |
| [
](https://www.v2ex.com/) | **V2ex 增强** | **自动签到**、链接转图片、自动无缝翻页、新标签页打开链接... | **[安装](https://greasyfork.org/zh-CN/scripts/424246)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/V2ex-Enhanced.user.js)** |
| [
](https://github.com/XIU2) | **Github 增强** | **高速下载** Git Clone/SSH、Release、Raw、Code(ZIP) 文件... | **[安装](https://greasyfork.org/zh-CN/scripts/412245)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/GithubEnhanced-High-Speed-Download.user.js)** |
-| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | **所有 Discuz!论坛**、423Down、不死鸟、小众软件、异次... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
+| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | **所有 Discuz! / Flarum 论坛**、423Down、不死鸟、小众软... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/413593)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Beautification.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 增强** | **自动回复**、自动无缝翻页、清理置顶帖子、自动滚动至隐藏... | **[安装](https://greasyfork.org/zh-CN/scripts/412890)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Enhanced.user.js)** |
| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 美化** | 精简多余内容、样式优化、宽屏显示 | **[安装](https://greasyfork.org/zh-CN/scripts/412361)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Beautification.user.js)** |
From 7855049c57a80ee124a38acee1ebb937d054f5e7 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Tue, 3 Aug 2021 22:55:42 +0800
Subject: [PATCH 0061/2070] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20[=E5=BF=AB?=
=?UTF-8?q?=E6=8D=B7=E5=85=B3=E9=97=AD=E6=82=AC=E6=B5=AE=E8=AF=84=E8=AE=BA?=
=?UTF-8?q?=EF=BC=88=E7=82=B9=E5=87=BB=E4=B8=A4=E4=BE=A7=E7=A9=BA=E7=99=BD?=
=?UTF-8?q?=E5=A4=84=EF=BC=89]=20=E5=8A=9F=E8=83=BD=E5=A4=B1=E6=95=88?=
=?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Zhihu-Enhanced.user.js | 59 ++++++++++++++++++++++++++++--------------
1 file changed, 40 insertions(+), 19 deletions(-)
diff --git a/Zhihu-Enhanced.user.js b/Zhihu-Enhanced.user.js
index 4c527aea7..b4fb219a2 100644
--- a/Zhihu-Enhanced.user.js
+++ b/Zhihu-Enhanced.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 知乎增强
-// @version 1.5.1
+// @version 1.5.2
// @author X.I.U
// @description 移除登录弹窗、一键收起回答、收起当前回答/评论(点击两侧空白处)、快捷回到顶部(右键两侧空白处)、屏蔽用户 (发布的内容)、屏蔽关键词(标题/评论)、屏蔽盐选内容、展开问题描述、置顶显示时间、显示问题时间、区分问题文章、默认高清原图、默认站外直链
// @match *://www.zhihu.com/*
@@ -109,27 +109,25 @@ function collapsedNowAnswer(selectors) {
if (!menu_value('menu_collapsedNowAnswer')) return
document.querySelector(selectors).onclick = function(event){
if (event.target==this) {
+ // 下面这段主要是 [收起回答],顺便 [收起评论](如果展开了的话)
let rightButton = document.querySelector('.ContentItem-actions.Sticky.RichContent-actions.is-fixed.is-bottom')
- if (rightButton) { // 悬浮的 [收起回答](此时正在浏览回答内容 [头部区域 + 中间区域])
+ // 悬浮在底部的 [收起回答](此时正在浏览回答内容 [头部区域 + 中间区域])
+ if (rightButton) {
// 固定的 [收起评论](先看看是否展开评论)
let commentCollapseButton = rightButton.querySelector('button.Button.ContentItem-action.Button--plain.Button--withIcon.Button--withLabel:first-of-type')
- if (commentCollapseButton && commentCollapseButton.innerText.indexOf('收起评论') > -1) {
- commentCollapseButton.click();
- }
+ if (commentCollapseButton && commentCollapseButton.textContent.indexOf('收起评论') > -1) commentCollapseButton.click();
// 再去收起回答
rightButton = rightButton.querySelector('.ContentItem-rightButton')
- if (rightButton && rightButton.hasAttribute('data-zop-retract-question')) {
- rightButton.click();
- }
- } else { // 固定的 [收起回答](此时正在浏览回答内容 [尾部区域])
- for (let el of document.querySelectorAll('.ContentItem-rightButton')) {
+ if (rightButton && rightButton.hasAttribute('data-zop-retract-question')) rightButton.click();
+ // 固定在回答底部的 [收起回答](此时正在浏览回答内容 [尾部区域])
+ } else {
+ for (let el of document.querySelectorAll('.ContentItem-rightButton')) { // 遍历所有回答底部的 [收起] 按钮
if (el.hasAttribute('data-zop-retract-question')) {
- if (isElementInViewport(el)) {
- // 固定的 [收起评论](先看看是否展开评论)
+ if (isElementInViewport(el)) { // 判断该 [收起] 按钮是否在可视区域内
+ // 固定的 [收起评论](先看看是否展开评论,即存在 [收起评论] 按钮)
let commentCollapseButton = el.parentNode.querySelector('button.Button.ContentItem-action.Button--plain.Button--withIcon.Button--withLabel:first-of-type')
- if (commentCollapseButton && commentCollapseButton.innerText.indexOf('收起评论') > -1) {
- commentCollapseButton.click(); // 如果展开了评论,就收起评论
- }
+ // 如果展开了评论,就收起评论
+ if (commentCollapseButton && commentCollapseButton.textContent.indexOf('收起评论') > -1) commentCollapseButton.click();
el.click() // 再去收起回答
break
}
@@ -137,6 +135,7 @@ function collapsedNowAnswer(selectors) {
}
}
+ // 下面这段只针对 [收起评论](如果展开了的话)
var commentCollapseButton_ = false, commentCollapseButton__ = false;
// 悬浮的 [收起评论](此时正在浏览评论内容 [中间区域])
let commentCollapseButton = document.querySelector('.CommentCollapseButton')
@@ -146,7 +145,7 @@ function collapsedNowAnswer(selectors) {
let commentCollapseButton_1 = document.querySelectorAll('.ContentItem-actions > button.Button.ContentItem-action.Button--plain.Button--withIcon.Button--withLabel:first-of-type, .ContentItem-action > button.Button.Button--plain.Button--withIcon.Button--withLabel:first-of-type')
if (commentCollapseButton_1.length > 0) {
for (let el of commentCollapseButton_1) {
- if (el.innerText.indexOf('收起评论') > -1) {
+ if (el.textContent.indexOf('收起评论') > -1) {
if (isElementInViewport(el)) {
el.click()
commentCollapseButton_ = true // 如果找到并点击了,就没必要执行下面的代码了(可视区域中没有 [收起评论] 时)
@@ -161,7 +160,7 @@ function collapsedNowAnswer(selectors) {
for (let el of commentCollapseButton_1) {
if (isElementInViewport(el)) {
let commentCollapseButton = el.parentNode.parentNode.parentNode.parentNode.parentNode.querySelector('.ContentItem-actions > button.Button.ContentItem-action.Button--plain.Button--withIcon.Button--withLabel:first-of-type')
- if (commentCollapseButton.innerText.indexOf('收起评论') > -1) {
+ if (commentCollapseButton.textContent.indexOf('收起评论') > -1) {
commentCollapseButton.click()
commentCollapseButton__ = true // 如果找到并点击了,就没必要执行下面的代码了(可视区域中没有 评论元素 时)
break
@@ -176,7 +175,7 @@ function collapsedNowAnswer(selectors) {
if (isElementInViewport(el)) {
let commentCollapseButton = el.parentNode.parentNode.parentNode.parentNode.parentNode.querySelector('.ContentItem-actions > button.Button.ContentItem-action.Button--plain.Button--withIcon.Button--withLabel:first-of-type')
console.log(commentCollapseButton)
- if (commentCollapseButton.innerText.indexOf('收起评论') > -1) {
+ if (commentCollapseButton.textContent.indexOf('收起评论') > -1) {
commentCollapseButton.click()
break
}
@@ -836,6 +835,28 @@ function removeLogin() {
}
+// 快捷关闭悬浮评论(监听点击事件,点击网页两侧空白处)
+function closeFloatingComments() {
+ const closeFloatingCommentsModal = (mutationsList, observer) => {
+ for (const mutation of mutationsList) {
+ for (const target of mutation.addedNodes) {
+ if (target.nodeType != 1) return
+ if (target.querySelector('.Modal-backdrop')) {
+ document.querySelector('.Modal-backdrop').onclick = function(event){
+ if (event.target == this) {
+ let button = document.getElementsByClassName('Button Modal-closeButton Button--plain')[0];
+ if (button) button.click();
+ }
+ }
+ }
+ }
+ }
+ };
+ const observer = new MutationObserver(closeFloatingCommentsModal);
+ observer.observe(document, { childList: true, subtree: true });
+}
+
+
// 监听 XMLHttpRequest 事件
function EventXMLHttpRequest() {
var _send = window.XMLHttpRequest.prototype.send
@@ -847,7 +868,6 @@ function EventXMLHttpRequest() {
}
-
// [完整显示时间 + 置顶显示时间] 功能修改自:https://greasyfork.org/scripts/402808(从 JQuery 改为原生 JavaScript,且优化了代码)
// 完整显示时间 + 置顶显示时间 - 首页
function topTime_index() {
@@ -1109,6 +1129,7 @@ function addLocationchange() {
(function() {
removeLogin(); // 移除登录弹窗
+ closeFloatingComments(); // 快捷关闭悬浮评论(监听点击事件,点击网页两侧空白处)
questionInvitation(); // 默认折叠邀请
setInterval(originalPic,100); // 默认高清原图
if (menu_value('menu_directLink')) setInterval(directLink, 100); // 默认站外直链
From d3ca358cf514e9b1e7291214c71245dcb8b8a739 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Wed, 4 Aug 2021 10:02:57 +0800
Subject: [PATCH 0062/2070] README.md
---
Hostloc-Enhanced.user.js | 23 ++++++++---------------
README.md | 2 +-
2 files changed, 9 insertions(+), 16 deletions(-)
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index 12fa36a3d..8718798a0 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -2,7 +2,7 @@
// @name 全球主机交流论坛增强
// @version 1.3.4
// @author X.I.U
-// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、回帖小尾巴、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
+// @description 自动签到(访问空间 +22 积分)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、回帖小尾巴、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
// @match *://hostloc.com/*
// @match *://91ai.net/*
// @icon https://www.hostloc.com/favicon.ico
@@ -23,7 +23,7 @@
(function() {
'use strict';
var menu_ALL = [
- ['menu_autoSignIn', '自动签到', '自动签到', true],
+ ['menu_autoSignIn', '自动签到(22 积分)', '自动签到', true],
['menu_reAutoSignIn', '重新签到', '重新签到', ''],
['menu_blockUsers', '屏蔽用户', '屏蔽用户', false],
['menu_customBlockUsers', '自定义屏蔽用户', '自定义屏蔽用户', []],
@@ -195,10 +195,9 @@
//replyIntervalDOMNodeInserted(); // 监听插入事件(回帖间隔)
- // 自动签到(访问空间 10 次 = 20 积分)
+ // 自动签到(访问空间 10 次 = 20 积分 + 当天首次访问论坛 2 积分)
function autoSignIn() {
if (!loginStatus) return
- //if (GM_getValue('menu_signingIn')) return
let timeNow = new Date().getFullYear() + "/" + (new Date().getMonth() + 1) + "/" + new Date().getDate(),
timeOld = GM_getValue('menu_signInTime');
if (!timeOld || timeOld != timeNow) { // 是新的一天
@@ -208,33 +207,27 @@
url = 0;
// 随机生成 12 个空间地址(2 个冗余)
for(let i = 0;i < 12;i++){url_list[i] = "https://" + location.host + "/space-uid-" + Math.floor(Math.random()*(50000-10000+1)+10000) + ".html";}
- // 每 5 秒访问一次(避免触发网站防御机制)
- //GM_setValue('menu_signingIn', true);
+ // 每 5 秒访问一次(避免触发网站防御机制,而且还可以适当浏览论坛)
let signIn = setInterval(function(){
GM_xmlhttpRequest({
url: url_list[url++],
method: "GET",
timeout: 4000
});
- console.log(`[全球主机交流论坛 增强] 金钱 +2 (${url_list[url]})`);
+ console.log(`[全球主机交流论坛 增强] 积分 +2 (${url_list[url]})`);
if (url === 11) { // 次数够了就取消定时循环
clearInterval(signIn);
- //GM_setValue('menu_signingIn', false);
- //GM_setValue('menu_signInTime', timeNow); // 写入签到时间以供后续比较
console.log('[全球主机交流论坛 增强] 签到完成!');
- GM_notification({text: '签到完成!金钱 +20 ~', timeout: 3500});
+ GM_notification({text: '签到完成!积分 +22 ~', timeout: 3500});
}
}, 5000);
- }/* else { // 新旧签到时间一致
- console.info('[全球主机交流论坛 增强] 已经签过到了。')
- }*/
+ }
}
// 重新签到
function reAutoSignIn() {
- //GM_setValue('menu_signingIn', false);
- GM_setValue('menu_signInTime', '1970/1/1');
+ GM_setValue('menu_signInTime', '1970/1/1'); // 设置为比当前日期更早
location.reload(); // 刷新网页
}
diff --git a/README.md b/README.md
index e36c35d8c..70ab653f7 100644
--- a/README.md
+++ b/README.md
@@ -32,7 +32,7 @@
| [
](https://github.com/XIU2) | **新标签页打开链接 \*** | 将网页中所有链接改为新标签页打开~ | **[安装](https://greasyfork.org/zh-CN/scripts/429714)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/TargetBlank.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/412681)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Beautification.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 增强** | **自动签到**、自动无缝翻页、屏蔽导读悬赏贴 (最新发表页)... | **[安装](https://greasyfork.org/zh-CN/scripts/412680)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Enhanced.user.js)** |
-| [
](https://hostloc.com) | **全球主机交流论坛 增强 \*** | **自动访问空间、屏蔽用户**、屏蔽关键词、自动无缝翻页等... | **[安装](https://greasyfork.org/zh-CN/scripts/414005)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Hostloc-Enhanced.user.js)** |
+| [
](https://hostloc.com) | **全球主机交流论坛 增强 \*** | **自动访问空间(22积分)、屏蔽用户**、屏蔽关键词、自动无缝翻... | **[安装](https://greasyfork.org/zh-CN/scripts/414005)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Hostloc-Enhanced.user.js)** |
| [
](https://store.steampowered.com) | **Steam 创意工坊大图 修复** | 修复 Steam 创意工坊预览大图无法显示的问题 | **[安装](https://github.com/XIU2/UserScript/raw/master/SteamWorkshopImageRepair.user.js)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/SteamWorkshopImageRepair.user.js)** |
> _脚本名称末尾 **`*`** 代表该脚本为**网友主动提出需求**而写的。如果你也有需求,可以[告诉我](https://github.com/XIU2/UserScript/issues/new/choose)!_
From c03e723e14090eea20a74e17c36af2820eb799d2 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Wed, 4 Aug 2021 16:46:23 +0800
Subject: [PATCH 0063/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20Discuz!=20?=
=?UTF-8?q?=E8=AE=BA=E5=9D=9B=E6=A3=80=E6=B5=8B=E4=BB=A3=E7=A0=81=EF=BC=88?=
=?UTF-8?q?=E5=BA=94=E8=AF=A5=E6=B2=A1=E6=9C=89=E9=81=97=E6=BC=8F=E4=BA=86?=
=?UTF-8?q?=EF=BC=89;=20=E4=BC=98=E5=8C=96=20=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 280 ++++++++++++++++++++++++-----------------------
1 file changed, 142 insertions(+), 138 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 2c58c7944..4cb533be6 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,11 +1,9 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.3.8
+// @version 1.3.9
// @author X.I.U
// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、微博评论、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed、AfreecaTV...
// @match *://*/*
-// @exclude *://www.423down.com/*.html
-// @exclude *://apphot.cc/*.html
// @connect www.gamersky.com
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
// @grant GM_xmlhttpRequest
@@ -34,7 +32,7 @@
'fitgirl-repacks.site',
'www.yxssp.com',
'weibo.com',
- 'www.afreecatv.com'];
+ 'www.afreecatv.com'], webType, curSite = {SiteTypeID: 0};
if (GM_getValue('menu_disable') == null){GM_setValue('menu_disable', [])};
// 注册脚本菜单
@@ -42,21 +40,20 @@
GM_registerMenuCommand('❎ 已禁用 (点击对当前网站启用)', function(){menu_disable('del')});
return
} else {
- if (websiteList.indexOf(location.host) > -1 // 其他网站列表
- || document.querySelector('meta[name="author"][content*="Discuz!"], meta[name="generator"][content*="Discuz!"]') // 所有 Discuz! 论坛
- || document.getElementById('flarum-loading') // 所有 Flarum 论坛
- ) {
- GM_registerMenuCommand('✅ 已启用 (点击对当前网站禁用)', function(){menu_disable('add')});
+ if (websiteList.indexOf(location.host) > -1) {
+ webType = 1 // 其他网站
+ } else if (document.querySelector('meta[name="author"][content*="Discuz!"], meta[name="generator"][content*="Discuz!"]') || document.getElementById('ft') && document.getElementById('ft').textContent.indexOf('Discuz!') > -1) {
+ webType = 2 // 所有 Discuz! 论坛
+ } else if (document.getElementById('flarum-loading')) {
+ webType = 3 // 所有 Flarum 论坛
} else {
GM_registerMenuCommand('❌ 当前网站暂不支持 [点击申请支持]', function () {window.GM_openInTab('https://github.com/XIU2/UserScript#xiu2userscript', {active: true,insert: true,setParent: true});window.GM_openInTab('https://greasyfork.org/zh-CN/scripts/419215/feedback', {active: true,insert: true,setParent: true});});
return
}
+ GM_registerMenuCommand('✅ 已启用 (点击对当前网站禁用)', function(){menu_disable('add')});
}
GM_registerMenuCommand('💬 反馈 & 欢迎申请支持', function () {window.GM_openInTab('https://github.com/XIU2/UserScript#xiu2userscript', {active: true,insert: true,setParent: true});window.GM_openInTab('https://greasyfork.org/zh-CN/scripts/419215/feedback', {active: true,insert: true,setParent: true});});
- // 默认 ID 为 0
- var curSite = {SiteTypeID: 0};
-
/*
自动翻页规则
type:
@@ -74,7 +71,7 @@
after = 插入后执行函数;
parameter = 参数
*/
- let DBSite = {
+ const DBSite = {
discuz_forum: {
SiteTypeID: 1,
pager: {
@@ -470,135 +467,142 @@
};
- switch (location.host) {
- case "www.423down.com":
- curSite = DBSite._423down_postslist;
- break;
- case "apphot.cc":
- curSite = DBSite.apphot_postslist;
- break;
- case "iao.su":
- curSite = DBSite.iao_su_postslist;
- break;
- case "www.appinn.com":
- curSite = DBSite.appinn_postslist;
- break;
- case "www.iplaysoft.com":
- if (location.pathname.indexOf(".html") > -1 || location.pathname.indexOf("/p/") > -1) { // 文章内
- curSite = DBSite.iplaysoft_postcomments;
- } else { // 其他页面
- curSite = DBSite.iplaysoft_postslist;
- }
- break;
- case "www.weidown.com":
- if (location.pathname.indexOf("/search/") > -1) {
- curSite = DBSite.weidown_search;
- } else if (location.pathname.indexOf("/special/") > -1) {
- curSite = DBSite.weidown_special;
- } else {
- curSite = DBSite.weidown;
- }
- break;
- case "www.yxssp.com":
- curSite = DBSite.yxssp;
- break;
- case "fitgirl-repacks.site":
- curSite = DBSite.fitgirl;
- break;
- case "art.alphacoders.com":
- curSite = DBSite.art_alphacoders;
- setTimeout(art_alphacoders_beforeFunction_0, 1000);
- break;
- case "wall.alphacoders.com":
- case "avatars.alphacoders.com":
- case "mobile.alphacoders.com":
- curSite = DBSite.wall_alphacoders;
- break;
- case "pubmed.ncbi.nlm.nih.gov":
- curSite = DBSite.pubmed_postslist;
- break;
- case "movie.douban.com":
- if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/comments') > -1) { // 短评
- curSite = DBSite.douban_subject_comments;
- } else if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/reviews') > -1) { // 影评
- curSite = DBSite.douban_subject_reviews;
- }else if(location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/episode') > -1) { // 电视剧每集评论
- curSite = DBSite.douban_subject_episode;
- }
- break;
- case "search.douban.com":
- curSite = DBSite.douban_search;
- break;
- case "www.3dmgame.com":
- curSite = DBSite._3dmgame;
- break;
- case "www.gamersky.com":
- if (location.pathname.indexOf("/ent/") > -1) {
- curSite = DBSite.gamersky_ent;
- } else {
- curSite = DBSite.gamersky_gl;
- }
- //document.lastElementChild.appendChild(document.createElement('style')).textContent = `.Comment {display: none !important;}` // 隐藏评论区
- break;
- case "www.ali213.net":
- curSite = DBSite.ali213_www;
- break;
- case "gl.ali213.net":
- curSite = DBSite.ali213_gl;
- document.lastElementChild.appendChild(document.createElement('style')).textContent = `.n_show_b {display: none !important;}` // 隐藏部分碍事元素
- break;
- case "www.58pic.com":
- if (location.pathname.indexOf("/tupian/") > -1) {
- curSite = DBSite._58pic;
- } else if (location.pathname.indexOf("/c/") > -1) {
- curSite = DBSite._58pic_c;
- }
- break;
- case "rarbgprx.org":
- curSite = DBSite.rarbgprx;
- break;
- case "weibo.com":
- curSite = DBSite.weibo_comment;
- break;
- case "www.afreecatv.com":
- curSite = DBSite.afreecatv;
- break;
- default:
- if (document.querySelector('meta[name="author"][content*="Discuz!"], meta[name="generator"][content*="Discuz!"]')) {
- // < 所有 Discuz!论坛 >
- if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
- if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
- curSite = DBSite.discuz_forum;
- } else if (location.pathname.indexOf('thread') > -1) { // 帖子内
- curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
- }else if(location.pathname.indexOf('search') > -1) { // 搜索结果
- curSite = DBSite.discuz_search;
- }
+ if (webType === 1) { // < 其他网站 >
+ switch (location.host) {
+ case 'www.423down.com':
+ if (location.pathname.indexOf('.html') === -1) curSite = DBSite._423down_postslist;
+ break;
+ case 'apphot.cc':
+ if (location.pathname.indexOf('.html') === -1) curSite = DBSite.apphot_postslist;
+ break;
+ case 'iao.su':
+ curSite = DBSite.iao_su_postslist;
+ break;
+ case 'www.appinn.com':
+ curSite = DBSite.appinn_postslist;
+ break;
+ case 'www.iplaysoft.com':
+ if (location.pathname.indexOf('.html') > -1 || location.pathname.indexOf('/p/') > -1) { // 文章内
+ curSite = DBSite.iplaysoft_postcomments;
+ } else { // 其他页面
+ curSite = DBSite.iplaysoft_postslist;
+ }
+ break;
+ case 'www.weidown.com':
+ if (location.pathname.indexOf('/search/') > -1) {
+ curSite = DBSite.weidown_search;
+ } else if (location.pathname.indexOf('/special/') > -1) {
+ curSite = DBSite.weidown_special;
} else {
- if (location.search.indexOf('mod=forumdisplay') > -1) { // 各版块帖子列表
- curSite = DBSite.discuz_forum;
- } else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内
- curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
- } else if (location.search.indexOf('mod=guide') > -1) { // 导读帖子列表
- curSite = DBSite.discuz_guide;
- } else if(location.search.indexOf('mod=space') > -1 && location.search.indexOf('&view=me') > -1) { // 别人的主题/回复
- curSite = DBSite.discuz_youspace;
- } else if (location.search.indexOf('mod=collection') > -1) { // 淘贴列表
- curSite = DBSite.discuz_collection;
- } else if (location.pathname.indexOf('search') > -1) { // 搜索结果
- curSite = DBSite.discuz_search;
- } else { // 考虑到部分论坛的部分板块帖子列表 URL 是自定义的
- curSite = DBSite.discuz_forum;
- }
+ curSite = DBSite.weidown;
+ }
+ break;
+ case 'www.yxssp.com':
+ curSite = DBSite.yxssp;
+ break;
+ case 'fitgirl-repacks.site':
+ curSite = DBSite.fitgirl;
+ break;
+ case 'art.alphacoders.com':
+ curSite = DBSite.art_alphacoders;
+ setTimeout(art_alphacoders_beforeFunction_0, 1000);
+ break;
+ case 'wall.alphacoders.com':
+ case 'avatars.alphacoders.com':
+ case 'mobile.alphacoders.com':
+ curSite = DBSite.wall_alphacoders;
+ break;
+ case 'pubmed.ncbi.nlm.nih.gov':
+ curSite = DBSite.pubmed_postslist;
+ break;
+ case 'movie.douban.com':
+ if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/comments') > -1) { // 短评
+ curSite = DBSite.douban_subject_comments;
+ } else if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/reviews') > -1) { // 影评
+ curSite = DBSite.douban_subject_reviews;
+ } else if(location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/episode') > -1) { // 电视剧每集评论
+ curSite = DBSite.douban_subject_episode;
}
- } else if (document.getElementById('flarum-loading') && location.pathname.indexOf('/d/') === -1) {
- // < 所有 Flarum 论坛 >
- curSite = DBSite.flarum;
+ break;
+ case 'search.douban.com':
+ curSite = DBSite.douban_search;
+ break;
+ case 'www.3dmgame.com':
+ curSite = DBSite._3dmgame;
+ break;
+ case 'www.gamersky.com':
+ if (location.pathname.indexOf('/ent/') > -1) {
+ curSite = DBSite.gamersky_ent;
+ } else {
+ curSite = DBSite.gamersky_gl;
+ }
+ break;
+ case 'www.ali213.net':
+ curSite = DBSite.ali213_www;
+ break;
+ case 'gl.ali213.net':
+ curSite = DBSite.ali213_gl;
+ document.lastElementChild.appendChild(document.createElement('style')).textContent = `.n_show_b {display: none !important;}` // 隐藏部分碍事元素
+ break;
+ case 'www.58pic.com':
+ if (location.pathname.indexOf('/tupian/') > -1) {
+ curSite = DBSite._58pic;
+ } else if (location.pathname.indexOf('/c/') > -1) {
+ curSite = DBSite._58pic_c;
+ }
+ break;
+ case 'rarbgprx.org':
+ curSite = DBSite.rarbgprx;
+ break;
+ case 'weibo.com':
+ curSite = DBSite.weibo_comment;
+ break;
+ case 'www.afreecatv.com':
+ curSite = DBSite.afreecatv;
+ break;
+ }
+ } else if (webType === 2) { // < 所有 Discuz!论坛 >
+ if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
+ if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
+ if (document.getElementById('autopbn')) { // 判断是否有 [下一页] 按钮
+ curSite = DBSite.discuz_forum;
+ } else {
+ curSite = DBSite.discuz_guide;
+ }
+ } else if (location.pathname.indexOf('thread') > -1) { // 帖子内
+ curSite = DBSite.discuz_thread;
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ }else if(location.pathname.indexOf('search') > -1) { // 搜索结果
+ curSite = DBSite.discuz_search;
}
+ } else {
+ if (location.search.indexOf('mod=forumdisplay') > -1) { // 各版块帖子列表
+ if (document.getElementById('autopbn')) { // 判断是否有 [下一页] 按钮
+ curSite = DBSite.discuz_forum;
+ } else {
+ curSite = DBSite.discuz_guide;
+ }
+ } else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内
+ curSite = DBSite.discuz_thread;
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ } else if (location.search.indexOf('mod=guide') > -1) { // 导读帖子列表
+ curSite = DBSite.discuz_guide;
+ } else if(location.search.indexOf('mod=space') > -1 && location.search.indexOf('&view=me') > -1) { // 别人的主题/回复
+ curSite = DBSite.discuz_youspace;
+ } else if (location.search.indexOf('mod=collection') > -1) { // 淘贴列表
+ curSite = DBSite.discuz_collection;
+ } else if (location.pathname.indexOf('search') > -1) { // 搜索结果
+ curSite = DBSite.discuz_search;
+ } else { // 考虑到部分论坛的部分板块帖子列表 URL 是自定义的
+ curSite = DBSite.discuz_forum;
+ }
+ }
+ } else if (webType === 3) { // < 所有 Flarum 论坛 >
+ curSite = DBSite.flarum;
}
- curSite.pageUrl = ""; // 下一页URL
+
+
+ curSite.pageUrl = ''; // 下一页URL
pageLoading(); // 自动无缝翻页
From b5360a08735f95f7500e329a3d3a49ad22cb4620 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 5 Aug 2021 00:33:28 +0800
Subject: [PATCH 0064/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=B8=96?=
=?UTF-8?q?=E5=AD=90=E5=86=85=E8=87=AA=E5=8A=A8=E7=BF=BB=E9=A1=B5]=20?=
=?UTF-8?q?=E8=84=9A=E6=9C=AC=E8=8F=9C=E5=8D=95=20(=E4=BB=85=20Discuz!=20?=
=?UTF-8?q?=E8=AE=BA=E5=9D=9B);=20=E4=BF=AE=E5=A4=8D=20[AfreecaTV]=20?=
=?UTF-8?q?=E7=BF=BB=E9=A1=B5=E5=A4=AA=E5=A4=9A=E5=AF=BC=E8=87=B4=E5=9B=BE?=
=?UTF-8?q?=E7=89=87=E6=B2=A1=E6=9C=89=E5=8A=A0=E8=BD=BD=E7=9A=84=E9=97=AE?=
=?UTF-8?q?=E9=A2=98;=20=E4=BC=98=E5=8C=96=20[=E6=B8=B8=E6=B0=91=E6=98=9F?=
=?UTF-8?q?=E7=A9=BA]=20=E7=BF=BB=E9=A1=B5=E8=A7=84=E5=88=99=EF=BC=88?=
=?UTF-8?q?=E7=A7=BB=E9=99=A4=E4=B8=8B=E4=B8=80=E9=A1=B5=E5=BA=95=E9=83=A8?=
=?UTF-8?q?=E7=9A=84=20=E6=9B=B4=E5=A4=9A=E7=9B=B8=E5=85=B3=E5=86=85?=
=?UTF-8?q?=E5=AE=B9=E8=AF=B7=E5=85=B3=E6=B3=A8=EF=BC=9Axxx=20=E6=96=87?=
=?UTF-8?q?=E5=AD=97=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 105 +++++++++++++++++++++++++++++++++--------------
1 file changed, 75 insertions(+), 30 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 4cb533be6..2db617db3 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.3.9
+// @version 1.4.0
// @author X.I.U
// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、微博评论、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed、AfreecaTV...
// @match *://*/*
@@ -20,21 +20,22 @@
(function() {
'use strict';
+ var webType, curSite = {SiteTypeID: 0};
// 目前支持的网站
- var websiteList = ['www.423down.com', 'apphot.cc', 'iao.su', 'www.appinn.com', 'www.iplaysoft.com', 'www.weidown.com',
+ const websiteList = ['www.423down.com', 'apphot.cc', 'iao.su', 'www.appinn.com', 'www.iplaysoft.com', 'www.weidown.com',
'art.alphacoders.com', 'wall.alphacoders.com', 'avatars.alphacoders.com', 'mobile.alphacoders.com',
'pubmed.ncbi.nlm.nih.gov',
- 'movie.douban.com',
- 'search.douban.com',
+ 'movie.douban.com', 'search.douban.com',
'www.3dmgame.com', 'www.gamersky.com', 'www.ali213.net', 'gl.ali213.net',
'www.58pic.com',
'rarbgprx.org',
'fitgirl-repacks.site',
'www.yxssp.com',
'weibo.com',
- 'www.afreecatv.com'], webType, curSite = {SiteTypeID: 0};
+ 'www.afreecatv.com'];
if (GM_getValue('menu_disable') == null){GM_setValue('menu_disable', [])};
+ if (GM_getValue('menu_discuz_thread_page') == null){GM_setValue('menu_discuz_thread_page', true)};
// 注册脚本菜单
if (menu_disable('check')) { // 当前网站是否已存在禁用列表中
GM_registerMenuCommand('❎ 已禁用 (点击对当前网站启用)', function(){menu_disable('del')});
@@ -51,21 +52,27 @@
return
}
GM_registerMenuCommand('✅ 已启用 (点击对当前网站禁用)', function(){menu_disable('add')});
+ if (webType === 2) {
+ GM_registerMenuCommand(`${GM_getValue('menu_discuz_thread_page')?'✅':'❎'} 帖子内自动翻页 (仅 Discuz! 论坛)`, function(){menu_switch(GM_getValue('menu_discuz_thread_page'), 'menu_discuz_thread_page', 'Discuz! 论坛帖子内翻页')});
+ }
}
GM_registerMenuCommand('💬 反馈 & 欢迎申请支持', function () {window.GM_openInTab('https://github.com/XIU2/UserScript#xiu2userscript', {active: true,insert: true,setParent: true});window.GM_openInTab('https://greasyfork.org/zh-CN/scripts/419215/feedback', {active: true,insert: true,setParent: true});});
+
/*
自动翻页规则
type:
1 = 脚本实现自动无缝翻页
- 2 = 网站自带了自动无缝翻页功能,只需要点击下一页按钮即可,这时 nextText 为按钮文本,避免一瞬间加载太多次下一页
+ 2 = 网站自带了自动无缝翻页功能,只需要点击下一页按钮即可
+ nextText: 按钮文本,只有按钮文本为该文本时才会点击按钮加载下一页,避免一瞬间加载太多次下一页
+ intervals: 点击间隔时间,对于没有按钮文字变化的按钮,可以手动指定间隔时间,单位:ms
3 = 依靠元素距离可视区域底部的距离来触发翻页
HT_insert:
1 = 插入该元素本身的前面;
2 = 插入该元素当中,第一个子元素前面;
3 = 插入该元素当中,最后一个子元素后面;
4 = 插入该元素本身的后面;
- scrollDelta:数值越大,滚动条触发点越靠上(越早开始翻页),一般是访问网页速度越慢,该值就需要越大
+ scrollDelta:数值越大,滚动条触发点越靠上(越早开始翻页),一般是访问网页速度越慢,该值就需要越大(如果 Type = 3,则相反)
function:
before = 插入前执行函数;
after = 插入后执行函数;
@@ -370,6 +377,9 @@
replaceE: 'css;.page_css',
scrollElement: '.pagecss',
scrollDelta: -1000
+ },
+ function: {
+ before: gamersky_gl_beforeFunction
}
},
ali213_www: {
@@ -443,7 +453,7 @@
pageElement: 'css;.td-modules-container.td-module-number4 > div',
HT_insert: ['css;.td-modules-container.td-module-number4', 3],
replaceE: 'css;.page-nav.td-pb-padding-side',
- scrollDelta: 900
+ scrollDelta: 1000
}
},
weibo_comment: {
@@ -460,7 +470,7 @@
pager: {
type: 2,
nextLink: '.btn-more > button',
- nextText: '查看更多',
+ intervals: 2000,
scrollDelta: 1000
}
}
@@ -570,8 +580,10 @@
curSite = DBSite.discuz_guide;
}
} else if (location.pathname.indexOf('thread') > -1) { // 帖子内
- curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ if (GM_getValue('menu_discuz_thread_page')) {
+ curSite = DBSite.discuz_thread;
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ }
}else if(location.pathname.indexOf('search') > -1) { // 搜索结果
curSite = DBSite.discuz_search;
}
@@ -583,8 +595,10 @@
curSite = DBSite.discuz_guide;
}
} else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内
- curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ if (GM_getValue('menu_discuz_thread_page')) {
+ curSite = DBSite.discuz_thread;
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ }
} else if (location.search.indexOf('mod=guide') > -1) { // 导读帖子列表
curSite = DBSite.discuz_guide;
} else if(location.search.indexOf('mod=space') > -1 && location.search.indexOf('&view=me') > -1) { // 别人的主题/回复
@@ -618,21 +632,29 @@
let scrollElement = document.querySelector(curSite.pager.scrollElement);
//console.log(scrollElement.offsetTop - (scrollTop + scrollHeight), scrollDelta, curSite.SiteTypeID)
if (scrollElement.offsetTop - (scrollTop + scrollHeight) <= scrollDelta) {
- if (curSite.SiteTypeID === 25) curSite.pager.scrollDelta -= 800 // 游民星空的比较奇葩,需要特殊处理下
+ if (curSite.SiteTypeID === 27) curSite.pager.scrollDelta -= 800 // 游民星空 gl 的比较奇葩,需要特殊处理下
ShowPager.loadMorePage();
}
} else {
if (document.documentElement.scrollHeight <= scrollHeight + scrollTop + scrollDelta) {
if (curSite.pager.type === 2) { // 翻页类型 2
- let autopbn = document.querySelector(curSite.pager.nextLink);
- if (autopbn) { // 如果正在加载,就不再点击
- if (!curSite.pager.nextText) { // 如果没有指定 nextText 就直接点击
- autopbn.click();
- } else if (autopbn.innerText.indexOf(curSite.pager.nextText) > -1){ // 如果指定了 nextText 就需要判断后再点击(避免已经在加载了,还重复点击)
- autopbn.click();
+ if (curSite.SiteTypeID > 0) { // 如果指定了间隔时间,那么就依靠这个判断时间到了没有~
+ let autopbn = document.querySelector(curSite.pager.nextLink);
+ if (autopbn) { // 寻找下一页链接
+ if (!curSite.pager.nextText) { // 如果没有指定 nextText 就直接点击
+ autopbn.click();
+ } else if (autopbn.textContent.indexOf(curSite.pager.nextText) > -1){ // 如果指定了 nextText 就需要判断后再点击(避免已经在加载了,还重复点击)
+ autopbn.click();
+ }
+ // 对于没有按钮文字变化的按钮,可以手动指定间隔时间
+ if (curSite.pager.intervals) {
+ let _SiteTypeID = curSite.SiteTypeID;
+ curSite.SiteTypeID = 0;
+ setTimeout(function(){curSite.SiteTypeID = _SiteTypeID;}, curSite.pager.intervals)
+ }
}
}
- } else {
+ } else { // 翻页类型 1
ShowPager.loadMorePage();
}
}
@@ -643,15 +665,15 @@
}
- function getElementToPageTop(el) {
+ /*function getElementToPageTop(el) {
if(el.parentElement) {
return getElementToPageTop(el.parentElement) + el.offsetTop
}
return el.offsetTop
- }
+ }*/
- // 隐藏帖子内的 [下一页] 按钮
+ // 隐藏帖子内的 [下一页] 按钮(Discuz! 论坛)
function hidePgbtn() {
let style_hidePgbtn = document.createElement('style');
style_hidePgbtn.innerHTML = `.pgbtn {display: none;}`;
@@ -659,7 +681,7 @@
}
- // iplaysoft 的插入前函数
+ // iplaysoft 的插入前函数(加载图片)
function iplaysoft_postslist_beforeFunction(pageElems) {
pageElems.forEach(function (one) {
let now = one.querySelector('img.lazyload')
@@ -673,19 +695,20 @@
}
- // iao.su 的插入前函数
+ // iao.su 的插入前函数(加载图片)
function iao_su_postslist_beforeFunction(pageElems) {
pageElems.forEach(function (one) {
let now = one.getElementsByClassName('post-card')[0]
if (now) {
- now.getElementsByClassName('blog-background')[0].style.backgroundImage = 'url("' + RegExp("(?<=loadBannerDirect\\(').*(?=', '',)").exec(now.getElementsByTagName("script")[0].innerText)[0]; + '")';
+ now.getElementsByClassName('blog-background')[0].style.backgroundImage = 'url("' + now.getElementsByTagName('script')[0].textContent.split("'")[1] + '")';
+ //now.getElementsByClassName('blog-background')[0].style.backgroundImage = 'url("' + RegExp("(?<=loadBannerDirect\\(').*(?=', '',)").exec(now.getElementsByTagName('script')[0].textContent)[0]; + '")';
}
});
return pageElems
}
- // art_alphacoders
+ // art_alphacoders(图片结构调整)
function art_alphacoders_beforeFunction_0() {
let pageElems1 = document.querySelectorAll('.container-masonry > div')
document.querySelector('.container-masonry').style.height = 'auto'
@@ -695,7 +718,7 @@
}
- // art_alphacoders 的插入前函数
+ // art_alphacoders 的插入前函数(图片结构调整)
function art_alphacoders_beforeFunction(pageElems) {
pageElems.forEach(function (one) {
one.setAttribute('style','float: left');
@@ -704,7 +727,7 @@
}
- // 58pic 的插入前函数
+ // 58pic 的插入前函数(加载图片)
function _58pic_beforeFunction(pageElems) {
let is_one = document.querySelector('.qtw-card.place-box.is-one');
if (is_one && is_one.style.display != 'none') {
@@ -721,6 +744,17 @@
}
+ // 游民星空攻略 的插入前函数(移除下一页底部的 "更多相关内容请关注:xxx" 文字)
+ function gamersky_gl_beforeFunction(pageElems) {
+ pageElems.forEach(function (one) {
+ if (one.tagName === 'P' && one.textContent.indexOf('更多相关内容请关注') > -1) {
+ one.style.display = 'none';
+ }
+ });
+ return pageElems
+ }
+
+
// 启用/禁用 (当前网站)
function menu_disable(type) {
switch(type) {
@@ -761,6 +795,17 @@
}
+ // 菜单开关
+ function menu_switch(menu_status, Name, Tips) {
+ if (menu_status === true){
+ GM_setValue(`${Name}`, false);
+ }else{
+ GM_setValue(`${Name}`, true);
+ }
+ location.reload();
+ };
+
+
// 滚动条事件
function windowScroll(fn1) {
var beforeScrollTop = document.documentElement.scrollTop,
From eccd27cf704021b26faf711a0b4aa722fca1adb1 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 5 Aug 2021 11:19:51 +0800
Subject: [PATCH 0065/2070] README.md
---
Autopage.user.js | 2 +-
README.md | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 2db617db3..71bda08dc 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -2,7 +2,7 @@
// @name 自动无缝翻页
// @version 1.4.0
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、423Down、Apphot、不死鸟、小众软件、异次元软件、微当下载、异星软件空间、豆瓣电影、微博评论、3DM游戏网、游侠网、游民星空、千图网、阿里小站、RARBG、FitGirl Repacks、AlphaCoders、PubMed、AfreecaTV...
+// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、Apphot、不死鸟、小众软件、微当下载、异次元软件、异星软件空间、RARBG、FitGirl Repacks、AlphaCoders、PubMed、AfreecaTV...
// @match *://*/*
// @connect www.gamersky.com
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
diff --git a/README.md b/README.md
index 70ab653f7..a9cd7c2b3 100644
--- a/README.md
+++ b/README.md
@@ -22,7 +22,7 @@
| [
](https://www.zhihu.com/people/xiu2) | **知乎 增强** | **移除登录弹窗**、一键收起回答、屏蔽用户、屏蔽关键词、快... | **[安装](https://greasyfork.org/zh-CN/scripts/419081)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhihu-Enhanced.user.js)** |
| [
](https://www.v2ex.com/) | **V2ex 增强** | **自动签到**、链接转图片、自动无缝翻页、新标签页打开链接... | **[安装](https://greasyfork.org/zh-CN/scripts/424246)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/V2ex-Enhanced.user.js)** |
| [
](https://github.com/XIU2) | **Github 增强** | **高速下载** Git Clone/SSH、Release、Raw、Code(ZIP) 文件... | **[安装](https://greasyfork.org/zh-CN/scripts/412245)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/GithubEnhanced-High-Speed-Download.user.js)** |
-| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | **所有 Discuz! / Flarum 论坛**、423Down、不死鸟、小众软... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
+| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | **所有 Discuz! / Flarum 论坛**、豆瓣、微博、千图网、423Do... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/413593)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Beautification.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 增强** | **自动回复**、自动无缝翻页、清理置顶帖子、自动滚动至隐藏... | **[安装](https://greasyfork.org/zh-CN/scripts/412890)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Enhanced.user.js)** |
| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 美化** | 精简多余内容、样式优化、宽屏显示 | **[安装](https://greasyfork.org/zh-CN/scripts/412361)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Beautification.user.js)** |
From 76e8f97941c435ffc7268aaccb844e3c4dfc3233 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 5 Aug 2021 16:58:34 +0800
Subject: [PATCH 0066/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E8=90=BD?=
=?UTF-8?q?=E5=B0=98=E4=B9=8B=E6=9C=A8=E3=80=81=E8=80=81=E6=AE=81=E6=AE=81?=
=?UTF-8?q?=E6=BC=82=E9=81=A5]=20=E6=94=AF=E6=8C=81;=20=E4=BC=98=E5=8C=96?=
=?UTF-8?q?=20=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 710 +++++++++++++++++++++++++----------------------
1 file changed, 383 insertions(+), 327 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 71bda08dc..8557e4d29 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.4.0
+// @version 1.4.1
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、Apphot、不死鸟、小众软件、微当下载、异次元软件、异星软件空间、RARBG、FitGirl Repacks、AlphaCoders、PubMed、AfreecaTV...
+// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、Apphot、不死鸟、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
// @match *://*/*
// @connect www.gamersky.com
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
@@ -22,17 +22,14 @@
'use strict';
var webType, curSite = {SiteTypeID: 0};
// 目前支持的网站
- const websiteList = ['www.423down.com', 'apphot.cc', 'iao.su', 'www.appinn.com', 'www.iplaysoft.com', 'www.weidown.com',
- 'art.alphacoders.com', 'wall.alphacoders.com', 'avatars.alphacoders.com', 'mobile.alphacoders.com',
- 'pubmed.ncbi.nlm.nih.gov',
- 'movie.douban.com', 'search.douban.com',
- 'www.3dmgame.com', 'www.gamersky.com', 'www.ali213.net', 'gl.ali213.net',
- 'www.58pic.com',
- 'rarbgprx.org',
- 'fitgirl-repacks.site',
- 'www.yxssp.com',
- 'weibo.com',
- 'www.afreecatv.com'];
+ const websiteList = ['movie.douban.com', 'weibo.com', 'www.58pic.com',
+ 'www.3dmgame.com', 'www.ali213.net', 'gl.ali213.net', 'www.gamersky.com',
+ 'www.423down.com', 'apphot.cc', 'iao.su', 'www.appinn.com', 'www.weidown.com', 'www.luochenzhimu.com', 'www.iplaysoft.com', 'www.mpyit.com', 'www.yxssp.com',
+ 'rarbgprx.org',
+ 'pubmed.ncbi.nlm.nih.gov',
+ 'www.afreecatv.com',
+ 'art.alphacoders.com', 'wall.alphacoders.com', 'avatars.alphacoders.com', 'mobile.alphacoders.com',
+ 'fitgirl-repacks.site'];
if (GM_getValue('menu_disable') == null){GM_setValue('menu_disable', [])};
if (GM_getValue('menu_discuz_thread_page') == null){GM_setValue('menu_discuz_thread_page', true)};
@@ -78,9 +75,9 @@
after = 插入后执行函数;
parameter = 参数
*/
- const DBSite = {
+ let DBSite = {
discuz_forum: {
- SiteTypeID: 1,
+ SiteTypeID: 0,
pager: {
type: 2,
nextLink: '#autopbn',
@@ -89,7 +86,7 @@
}
},
discuz_thread: {
- SiteTypeID: 2,
+ SiteTypeID: 0,
pager: {
type: 1,
nextLink: '//a[@class="nxt"][@href]',
@@ -100,7 +97,7 @@
}
},
discuz_search: {
- SiteTypeID: 3,
+ SiteTypeID: 0,
pager: {
type: 1,
nextLink: '//a[@class="nxt"][@href]',
@@ -111,7 +108,7 @@
}
},
discuz_guide: {
- SiteTypeID: 4,
+ SiteTypeID: 0,
pager: {
type: 1,
nextLink: '//a[@class="nxt"][@href]',
@@ -122,7 +119,7 @@
}
},
discuz_youspace: {
- SiteTypeID: 5,
+ SiteTypeID: 0,
pager: {
type: 1,
nextLink: '//a[@class="nxt"][@href]',
@@ -133,7 +130,7 @@
}
},
discuz_collection: {
- SiteTypeID: 6,
+ SiteTypeID: 0,
pager: {
type: 1,
nextLink: '//a[@class="nxt"][@href]',
@@ -144,130 +141,195 @@
}
},
flarum: {
- SiteTypeID: 7,
+ SiteTypeID: 0,
pager: {
type: 2,
nextLink: '.DiscussionList-loadMore > button[title]',
scrollDelta: 1000
}
},
- _423down_postslist: {
- SiteTypeID: 8,
+ douban_subject_comments: {
+ SiteTypeID: 0,
pager: {
type: 1,
- nextLink: '//div[@class="paging"]//a[contains(text(),"下一页")][@href]',
- pageElement: 'css;div.content-wrap ul.excerpt > li',
- HT_insert: ['css;div.content-wrap ul.excerpt', 3],
- replaceE: 'css;div.paging',
- scrollDelta: 1500
+ nextLink: '//a[@class="next"][@href]',
+ pageElement: 'css;#comments > .comment-item',
+ HT_insert: ['css;#paginator', 1],
+ replaceE: 'css;#paginator',
+ scrollDelta: 1000
}
},
- apphot_postslist: {
- SiteTypeID: 9,
+ douban_subject_reviews: {
+ SiteTypeID: 0,
pager: {
type: 1,
- nextLink: '//div[@class="pagination"]//a[contains(text(),"下一页")][@href]',
- pageElement: 'css;div.content > article.excerpt',
- HT_insert: ['css;div.pagination', 1],
- replaceE: 'css;div.pagination',
- scrollDelta: 1500
+ nextLink: '//link[@rel="next"][@href]',
+ pageElement: 'css;.review-list > div',
+ HT_insert: ['css;.review-list', 3],
+ replaceE: 'css;.paginator',
+ scrollDelta: 1000
}
},
- iao_su_postslist: {
- SiteTypeID: 10,
+ douban_subject_episode: {
+ SiteTypeID: 0,
pager: {
type: 1,
- nextLink: '//li[@class="btn btn-primary next"]//a[@href]',
- pageElement: 'css;#index > article, #archive > article',
- HT_insert: ['css;ol.page-navigator', 1],
- replaceE: 'css;ol.page-navigator',
- scrollDelta: 800
- },
- function: {
- before: iao_su_postslist_beforeFunction
+ nextLink: '//link[@rel="next"][@href]',
+ pageElement: 'css;#comments > div',
+ HT_insert: ['css;#comments', 3],
+ replaceE: 'css;.paginator',
+ scrollDelta: 1000
}
},
- appinn_postslist: {
- SiteTypeID: 11,
+ weibo_comment: {
+ SiteTypeID: 0,
+ pager: {
+ type: 2,
+ nextLink: 'a[action-type="click_more_comment"]',
+ nextText: '查看更多c',
+ scrollDelta: 1000
+ }
+ },
+ _58pic: {
+ SiteTypeID: 0,
pager: {
type: 1,
- nextLink: '//a[@class="next page-numbers"][@href]',
- pageElement: 'css;section#latest-posts > article',
- HT_insert: ['css;nav.navigation.pagination', 1],
- replaceE: 'css;div.nav-links',
- scrollDelta: 1500
+ nextLink: '//div[contains(@class,"page-box")]//a[text()="下一页"][@href]',
+ pageElement: 'css;.pic-box > .qtw-card',
+ HT_insert: ['css;.pic-box', 3],
+ replaceE: 'css;.page-box',
+ scrollDelta: 2000
+ },
+ function: {
+ before: _58pic_beforeFunction
}
},
- iplaysoft_postslist: {
- SiteTypeID: 12,
+ _58pic_c: {
+ SiteTypeID: 0,
pager: {
type: 1,
- nextLink: '//div[@class="pagenavi"]//a[@title="下一页"][@href]',
- pageElement: 'css;#postlist > div.entry',
- HT_insert: ['css;#postlist > .pagenavi-button', 1],
- replaceE: 'css;.pagenavi-button, .pagenavi',
- scrollDelta: 1200
+ nextLink: '//div[contains(@class,"page-box")]//a[text()="下一页"][@href]',
+ pageElement: 'css;.list-box > .qtw-card',
+ HT_insert: ['css;.list-box', 3],
+ replaceE: 'css;.page-box',
+ scrollDelta: 4000
},
function: {
- before: iplaysoft_postslist_beforeFunction
+ before: _58pic_beforeFunction
}
},
- iplaysoft_postcomments: {
- SiteTypeID: 13,
+ _3dmgame: {
+ SiteTypeID: 0,
pager: {
- type: 2,
- nextLink: '#loadHistoryComments',
- nextText: '展开后面',
- scrollDelta: 1200
+ type: 3,
+ nextLink: '//li[@class="next"]/a[@href]',
+ pageElement: 'css;.news_warp_center > *',
+ HT_insert: ['css;.news_warp_center', 3],
+ replaceE: 'css;.pagewrap',
+ scrollElement: '.pagewrap',
+ scrollDelta: 400
}
},
- pubmed_postslist: {
- SiteTypeID: 14,
+ ali213_www: {
+ SiteTypeID: 0,
pager: {
- type: 2,
- nextLink: 'button.load-button.next-page',
- nextText: 'Show more',
+ type: 3,
+ nextLink: '//a[@id="after_this_page"][@href]',
+ pageElement: 'css;#Content >*:not(.news_ding):not(.page_fenye)',
+ HT_insert: ['css;.page_fenye', 1],
+ replaceE: 'css;.page_fenye',
+ scrollElement: '.page_fenye',
+ scrollDelta: 400
+ }
+ },
+ ali213_gl: {
+ SiteTypeID: 0,
+ pager: {
+ type: 3,
+ nextLink: '//a[@class="next n"][@href]',
+ pageElement: 'css;.c-detail >*',
+ HT_insert: ['css;.c-detail', 3],
+ replaceE: 'css;.page_fenye',
+ scrollElement: '.page_fenye',
+ scrollDelta: 400
+ }
+ },
+ gamersky_ent: {
+ SiteTypeID: 0,
+ pager: {
+ type: 3,
+ nextLink: '//div[@class="page_css"]/a[text()="下一页"][@href]',
+ pageElement: 'css;.Mid2L_con > *:not(.gs_nc_editor):not(.pagecss):not(.page_css):not(.gs_ccs_solve):not(.post_ding)',
+ HT_insert: ['css;.page_css', 1],
+ replaceE: 'css;.page_css',
+ scrollElement: '.page_css',
+ scrollDelta: 100
+ }
+ },
+ gamersky_gl: {
+ SiteTypeID: 0,
+ pager: {
+ type: 3,
+ nextLink: '//div[@class="page_css"]/a[text()="下一页"][@href]',
+ pageElement: 'css;.Mid2L_con > *:not(.gs_nc_editor):not(.pagecss):not(.gs_ccs_solve):not(.post_ding)',
+ HT_insert: ['css;.gs_nc_editor', 1],
+ replaceE: 'css;.page_css',
+ scrollElement: '.pagecss',
+ scrollDelta: -1000
+ },
+ function: {
+ before: gamersky_gl_beforeFunction
+ }
+ },
+ _423down_postslist: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '//div[@class="paging"]//a[contains(text(),"下一页")][@href]',
+ pageElement: 'css;div.content-wrap ul.excerpt > li',
+ HT_insert: ['css;div.content-wrap ul.excerpt', 3],
+ replaceE: 'css;div.paging',
scrollDelta: 1500
}
},
- wall_alphacoders: {
- SiteTypeID: 15,
+ apphot_postslist: {
+ SiteTypeID: 0,
pager: {
type: 1,
- nextLink: '//a[@id="next_page"][@href]',
- pageElement: 'css;.thumb-container-big, .avatar-thumb, .thumb-element',
- HT_insert: ['css;.thumb-container-big:nth-last-child(1), .avatar-thumb:nth-last-child(1), .thumb-element:nth-last-child(1)', 4],
- replaceE: '//div[@class="hidden-xs hidden-sm"]/..',
- scrollDelta: 1000
+ nextLink: '//div[@class="pagination"]//a[contains(text(),"下一页")][@href]',
+ pageElement: 'css;div.content > article.excerpt',
+ HT_insert: ['css;div.pagination', 1],
+ replaceE: 'css;div.pagination',
+ scrollDelta: 1500
}
},
- art_alphacoders: {
- SiteTypeID: 16,
+ iao_su_postslist: {
+ SiteTypeID: 0,
pager: {
type: 1,
- nextLink: '//a[@id="next_page"][@href]',
- pageElement: 'css;.container-masonry > div',
- HT_insert: ['css;.container-masonry', 3],
- replaceE: '//div[@class="hidden-xs hidden-sm"]/..',
- scrollDelta: 1000
+ nextLink: '//li[@class="btn btn-primary next"]//a[@href]',
+ pageElement: 'css;#index > article, #archive > article',
+ HT_insert: ['css;ol.page-navigator', 1],
+ replaceE: 'css;ol.page-navigator',
+ scrollDelta: 800
},
function: {
- before: art_alphacoders_beforeFunction
+ before: iao_su_postslist_beforeFunction
}
},
- fitgirl: {
- SiteTypeID: 17,
+ appinn_postslist: {
+ SiteTypeID: 0,
pager: {
type: 1,
nextLink: '//a[@class="next page-numbers"][@href]',
- pageElement: 'css;article[id^="post-"]',
- HT_insert: ['css;nav.navigation.paging-navigation', 1],
- replaceE: 'css;nav.navigation.paging-navigation',
- scrollDelta: 2000
+ pageElement: 'css;section#latest-posts > article',
+ HT_insert: ['css;nav.navigation.pagination', 1],
+ replaceE: 'css;div.nav-links',
+ scrollDelta: 1500
}
},
weidown: {
- SiteTypeID: 18,
+ SiteTypeID: 0,
pager: {
type: 1,
nextLink: '//a[@class="nextpage"][@href]',
@@ -278,7 +340,7 @@
}
},
weidown_search: {
- SiteTypeID: 19,
+ SiteTypeID: 0,
pager: {
type: 1,
nextLink: '//a[@class="nextpage"][@href]',
@@ -289,7 +351,7 @@
}
},
weidown_special: {
- SiteTypeID: 20,
+ SiteTypeID: 0,
pager: {
type: 1,
nextLink: '//a[@class="nextpage"][@href]',
@@ -299,154 +361,67 @@
scrollDelta: 700
}
},
- douban_subject_comments: {
- SiteTypeID: 21,
- pager: {
- type: 1,
- nextLink: '//a[@class="next"][@href]',
- pageElement: 'css;#comments > .comment-item',
- HT_insert: ['css;#paginator', 1],
- replaceE: 'css;#paginator',
- scrollDelta: 700
- }
- },
- douban_subject_reviews: {
- SiteTypeID: 22,
- pager: {
- type: 1,
- nextLink: '//link[@rel="next"][@href]',
- pageElement: 'css;.review-list > div',
- HT_insert: ['css;.review-list', 3],
- replaceE: 'css;.paginator',
- scrollDelta: 700
- }
- },
- douban_subject_episode: {
- SiteTypeID: 23,
- pager: {
- type: 1,
- nextLink: '//link[@rel="next"][@href]',
- pageElement: 'css;#comments > div',
- HT_insert: ['css;#comments', 3],
- replaceE: 'css;.paginator',
- scrollDelta: 700
- }
- },
- douban_search: {
- SiteTypeID: 24,
- pager: {
- type: 1,
- nextLink: '//a[@class="next"][@href]',
- pageElement: 'css;#root [class^="_"] [class^="sc-"]',
- HT_insert: ['css;.paginator', 1],
- replaceE: 'css;.paginator',
- scrollDelta: 700
- }
- },
- _3dmgame: {
- SiteTypeID: 25,
- pager: {
- type: 3,
- nextLink: '//li[@class="next"]/a[@href]',
- pageElement: 'css;.news_warp_center > *',
- HT_insert: ['css;.news_warp_center', 3],
- replaceE: 'css;.pagewrap',
- scrollElement: '.pagewrap',
- scrollDelta: 400
- }
- },
- gamersky_ent: {
- SiteTypeID: 26,
- pager: {
- type: 3,
- nextLink: '//div[@class="page_css"]/a[text()="下一页"][@href]',
- pageElement: 'css;.Mid2L_con > *:not(.gs_nc_editor):not(.pagecss):not(.page_css):not(.gs_ccs_solve):not(.post_ding)',
- HT_insert: ['css;.page_css', 1],
- replaceE: 'css;.page_css',
- scrollElement: '.page_css',
- scrollDelta: 100
- }
- },
- gamersky_gl: {
- SiteTypeID: 27,
- pager: {
- type: 3,
- nextLink: '//div[@class="page_css"]/a[text()="下一页"][@href]',
- pageElement: 'css;.Mid2L_con > *:not(.gs_nc_editor):not(.pagecss):not(.gs_ccs_solve):not(.post_ding)',
- HT_insert: ['css;.gs_nc_editor', 1],
- replaceE: 'css;.page_css',
- scrollElement: '.pagecss',
- scrollDelta: -1000
- },
- function: {
- before: gamersky_gl_beforeFunction
- }
- },
- ali213_www: {
- SiteTypeID: 28,
- pager: {
- type: 3,
- nextLink: '//a[@id="after_this_page"][@href]',
- pageElement: 'css;#Content >*:not(.news_ding):not(.page_fenye)',
- HT_insert: ['css;.page_fenye', 1],
- replaceE: 'css;.page_fenye',
- scrollElement: '.page_fenye',
- scrollDelta: 400
- }
- },
- ali213_gl: {
- SiteTypeID: 29,
- pager: {
- type: 3,
- nextLink: '//a[@class="next n"][@href]',
- pageElement: 'css;.c-detail >*',
- HT_insert: ['css;.c-detail', 3],
- replaceE: 'css;.page_fenye',
- scrollElement: '.page_fenye',
- scrollDelta: 400
- }
- },
- _58pic: {
- SiteTypeID: 30,
+ luochenzhimu: {
+ SiteTypeID: 0,
pager: {
type: 1,
- nextLink: '//div[contains(@class,"page-box")]//a[text()="下一页"][@href]',
- pageElement: 'css;.pic-box > .qtw-card',
- HT_insert: ['css;.pic-box', 3],
- replaceE: 'css;.page-box',
- scrollDelta: 2000
+ nextLink: '//li[@class="next-page"]/a[@href]',
+ pageElement: 'css;.content > article',
+ HT_insert: ['css;.content > .pagination', 1],
+ replaceE: 'css;.content > .pagination',
+ scrollDelta: 1000
},
function: {
- before: _58pic_beforeFunction
+ before: luochenzhimu_beforeFunction
}
},
- _58pic_c: {
- SiteTypeID: 31,
+ iplaysoft_postslist: {
+ SiteTypeID: 0,
pager: {
type: 1,
- nextLink: '//div[contains(@class,"page-box")]//a[text()="下一页"][@href]',
- pageElement: 'css;.list-box > .qtw-card',
- HT_insert: ['css;.list-box', 3],
- replaceE: 'css;.page-box',
- scrollDelta: 4000
+ nextLink: '//div[@class="pagenavi"]//a[@title="下一页"][@href]',
+ pageElement: 'css;#postlist > div.entry',
+ HT_insert: ['css;#postlist > .pagenavi-button', 1],
+ replaceE: 'css;.pagenavi-button, .pagenavi',
+ scrollDelta: 1200
},
function: {
- before: _58pic_beforeFunction
+ before: iplaysoft_postslist_beforeFunction
}
},
- rarbgprx: {
- SiteTypeID: 32,
+ iplaysoft_postcomments: {
+ SiteTypeID: 0,
+ pager: {
+ type: 2,
+ nextLink: '#loadHistoryComments',
+ nextText: '展开后面',
+ scrollDelta: 1200
+ }
+ },
+ mpyit: {
+ SiteTypeID: 0,
pager: {
type: 1,
- nextLink: '(//a[@title="next page"])[1][@href]',
- pageElement: 'css;table.lista2t tr.lista2',
- HT_insert: ['css;table.lista2t > tbody', 3],
- replaceE: 'css;#pager_links',
- scrollDelta: 900
+ nextLink: '//a[@class="page-numbers"][@title="下一页"][@href]',
+ pageElement: 'css;#post > div[id^="post-"]',
+ HT_insert: ['css;#post > #pagenavi', 1],
+ replaceE: 'css;#post > #pagenavi',
+ scrollDelta: 1700
+ }
+ },
+ mpyit_category: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="page-numbers"][@title="下一页"][@href]',
+ pageElement: 'css;#content > div[class^="entry_box"]',
+ HT_insert: ['css;#content > #pagenavi', 1],
+ replaceE: 'css;#content > #pagenavi',
+ scrollDelta: 1700
}
},
yxssp: {
- SiteTypeID: 33,
+ SiteTypeID: 0,
pager: {
type: 1,
nextLink: '//div[@class="page-nav td-pb-padding-side"]/a[last()][@href]',
@@ -456,29 +431,119 @@
scrollDelta: 1000
}
},
- weibo_comment: {
- SiteTypeID: 34,
+ rarbgprx: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '(//a[@title="next page"])[1][@href]',
+ pageElement: 'css;table.lista2t tr.lista2',
+ HT_insert: ['css;table.lista2t > tbody', 3],
+ replaceE: 'css;#pager_links',
+ scrollDelta: 900
+ }
+ },
+ pubmed_postslist: {
+ SiteTypeID: 0,
pager: {
type: 2,
- nextLink: 'a[action-type="click_more_comment"]',
- nextText: '查看更多c',
- scrollDelta: 1000
+ nextLink: 'button.load-button.next-page',
+ nextText: 'Show more',
+ scrollDelta: 1500
}
},
afreecatv: {
- SiteTypeID: 35,
+ SiteTypeID: 0,
pager: {
type: 2,
nextLink: '.btn-more > button',
intervals: 2000,
scrollDelta: 1000
}
+ },
+ alphacoders_art: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '//a[@id="next_page"][@href]',
+ pageElement: 'css;.container-masonry > div',
+ HT_insert: ['css;.container-masonry', 3],
+ replaceE: '//div[@class="hidden-xs hidden-sm"]/..',
+ scrollDelta: 1000
+ },
+ function: {
+ before: alphacoders_art_beforeFunction
+ }
+ },
+ alphacoders_wall: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '//a[@id="next_page"][@href]',
+ pageElement: 'css;.thumb-container-big, .avatar-thumb, .thumb-element',
+ HT_insert: ['css;.thumb-container-big:nth-last-child(1), .avatar-thumb:nth-last-child(1), .thumb-element:nth-last-child(1)', 4],
+ replaceE: '//div[@class="hidden-xs hidden-sm"]/..',
+ scrollDelta: 1000
+ }
+ },
+ fitgirl: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="next page-numbers"][@href]',
+ pageElement: 'css;article[id^="post-"]',
+ HT_insert: ['css;nav.navigation.paging-navigation', 1],
+ replaceE: 'css;nav.navigation.paging-navigation',
+ scrollDelta: 2000
+ }
}
};
+ // 生成 ID
+ generateID();
+
+ // 用于脚本判断
+ const SiteType = {
+ GAMERSKY_GL: DBSite.gamersky_gl.SiteTypeID
+ };
if (webType === 1) { // < 其他网站 >
switch (location.host) {
+ case 'movie.douban.com':
+ if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/comments') > -1) { // 短评
+ curSite = DBSite.douban_subject_comments;
+ } else if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/reviews') > -1) { // 影评
+ curSite = DBSite.douban_subject_reviews;
+ } else if(location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/episode') > -1) { // 电视剧每集评论
+ curSite = DBSite.douban_subject_episode;
+ }
+ break;
+ case 'weibo.com':
+ curSite = DBSite.weibo_comment;
+ break;
+ case 'www.58pic.com':
+ if (location.pathname.indexOf('/tupian/') > -1) {
+ curSite = DBSite._58pic;
+ } else if (location.pathname.indexOf('/c/') > -1) {
+ curSite = DBSite._58pic_c;
+ }
+ break;
+ case 'www.3dmgame.com':
+ curSite = DBSite._3dmgame;
+ break;
+ case 'www.ali213.net':
+ curSite = DBSite.ali213_www;
+ break;
+ case 'gl.ali213.net':
+ curSite = DBSite.ali213_gl;
+ document.lastElementChild.appendChild(document.createElement('style')).textContent = `.n_show_b {display: none !important;}` // 隐藏部分碍事元素
+ break;
+ case 'www.gamersky.com':
+ if (location.pathname.indexOf('/ent/') > -1) {
+ curSite = DBSite.gamersky_ent;
+ } else {
+ curSite = DBSite.gamersky_gl;
+ }
+ break;
case 'www.423down.com':
if (location.pathname.indexOf('.html') === -1) curSite = DBSite._423down_postslist;
break;
@@ -491,13 +556,6 @@
case 'www.appinn.com':
curSite = DBSite.appinn_postslist;
break;
- case 'www.iplaysoft.com':
- if (location.pathname.indexOf('.html') > -1 || location.pathname.indexOf('/p/') > -1) { // 文章内
- curSite = DBSite.iplaysoft_postcomments;
- } else { // 其他页面
- curSite = DBSite.iplaysoft_postslist;
- }
- break;
case 'www.weidown.com':
if (location.pathname.indexOf('/search/') > -1) {
curSite = DBSite.weidown_search;
@@ -507,69 +565,48 @@
curSite = DBSite.weidown;
}
break;
- case 'www.yxssp.com':
- curSite = DBSite.yxssp;
- break;
- case 'fitgirl-repacks.site':
- curSite = DBSite.fitgirl;
- break;
- case 'art.alphacoders.com':
- curSite = DBSite.art_alphacoders;
- setTimeout(art_alphacoders_beforeFunction_0, 1000);
- break;
- case 'wall.alphacoders.com':
- case 'avatars.alphacoders.com':
- case 'mobile.alphacoders.com':
- curSite = DBSite.wall_alphacoders;
- break;
- case 'pubmed.ncbi.nlm.nih.gov':
- curSite = DBSite.pubmed_postslist;
+ case 'www.luochenzhimu.com':
+ curSite = DBSite.luochenzhimu;
break;
- case 'movie.douban.com':
- if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/comments') > -1) { // 短评
- curSite = DBSite.douban_subject_comments;
- } else if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/reviews') > -1) { // 影评
- curSite = DBSite.douban_subject_reviews;
- } else if(location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/episode') > -1) { // 电视剧每集评论
- curSite = DBSite.douban_subject_episode;
+ case 'www.iplaysoft.com':
+ if (location.pathname.indexOf('.html') > -1 || location.pathname.indexOf('/p/') > -1) { // 文章内
+ curSite = DBSite.iplaysoft_postcomments;
+ } else { // 其他页面
+ curSite = DBSite.iplaysoft_postslist;
}
break;
- case 'search.douban.com':
- curSite = DBSite.douban_search;
- break;
- case 'www.3dmgame.com':
- curSite = DBSite._3dmgame;
- break;
- case 'www.gamersky.com':
- if (location.pathname.indexOf('/ent/') > -1) {
- curSite = DBSite.gamersky_ent;
- } else {
- curSite = DBSite.gamersky_gl;
+ case 'www.mpyit.com':
+ if (location.pathname === '/' && !location.search) {
+ curSite = DBSite.mpyit;
+ } else if (location.pathname.indexOf('/category/') > -1 || location.search.indexOf('?s=') > -1) {
+ curSite = DBSite.mpyit_category;
}
break;
- case 'www.ali213.net':
- curSite = DBSite.ali213_www;
- break;
- case 'gl.ali213.net':
- curSite = DBSite.ali213_gl;
- document.lastElementChild.appendChild(document.createElement('style')).textContent = `.n_show_b {display: none !important;}` // 隐藏部分碍事元素
- break;
- case 'www.58pic.com':
- if (location.pathname.indexOf('/tupian/') > -1) {
- curSite = DBSite._58pic;
- } else if (location.pathname.indexOf('/c/') > -1) {
- curSite = DBSite._58pic_c;
- }
+ case 'www.yxssp.com':
+ curSite = DBSite.yxssp;
break;
case 'rarbgprx.org':
curSite = DBSite.rarbgprx;
break;
- case 'weibo.com':
- curSite = DBSite.weibo_comment;
+ case 'pubmed.ncbi.nlm.nih.gov':
+ curSite = DBSite.pubmed_postslist;
break;
+
case 'www.afreecatv.com':
curSite = DBSite.afreecatv;
break;
+ case 'art.alphacoders.com':
+ curSite = DBSite.alphacoders_art;
+ setTimeout(alphacoders_art_beforeFunction_0, 1000);
+ break;
+ case 'wall.alphacoders.com':
+ case 'avatars.alphacoders.com':
+ case 'mobile.alphacoders.com':
+ curSite = DBSite.alphacoders_wall;
+ break;
+ case 'fitgirl-repacks.site':
+ curSite = DBSite.fitgirl;
+ break;
}
} else if (webType === 2) { // < 所有 Discuz!论坛 >
if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
@@ -632,7 +669,7 @@
let scrollElement = document.querySelector(curSite.pager.scrollElement);
//console.log(scrollElement.offsetTop - (scrollTop + scrollHeight), scrollDelta, curSite.SiteTypeID)
if (scrollElement.offsetTop - (scrollTop + scrollHeight) <= scrollDelta) {
- if (curSite.SiteTypeID === 27) curSite.pager.scrollDelta -= 800 // 游民星空 gl 的比较奇葩,需要特殊处理下
+ if (curSite.SiteTypeID === SiteType.GAMERSKY_GL) curSite.pager.scrollDelta -= 800 // 游民星空 gl 的比较奇葩,需要特殊处理下
ShowPager.loadMorePage();
}
} else {
@@ -681,14 +718,28 @@
}
- // iplaysoft 的插入前函数(加载图片)
- function iplaysoft_postslist_beforeFunction(pageElems) {
+ // 58pic 的插入前函数(加载图片)
+ function _58pic_beforeFunction(pageElems) {
+ let is_one = document.querySelector('.qtw-card.place-box.is-one');
+ if (is_one && is_one.style.display != 'none') {
+ is_one.setAttribute('style', 'display: none;')
+ }
pageElems.forEach(function (one) {
- let now = one.querySelector('img.lazyload')
- if (now && !now.getAttribute('src')) {
- now.setAttribute('src',now.getAttribute('data-src'))
- now.setAttribute('srcset',now.getAttribute('data-src'))
- now.setAttribute('class','lazyloaded')
+ let now = one.querySelector('img.lazy')
+ if (now && now.getAttribute('src') != now.dataset.original) {
+ now.setAttribute('src', now.dataset.original)
+ now.setAttribute('style', 'display: block;')
+ }
+ });
+ return pageElems
+ }
+
+
+ // 游民星空攻略 的插入前函数(移除下一页底部的 "更多相关内容请关注:xxx" 文字)
+ function gamersky_gl_beforeFunction(pageElems) {
+ pageElems.forEach(function (one) {
+ if (one.tagName === 'P' && one.textContent.indexOf('更多相关内容请关注') > -1) {
+ one.style.display = 'none';
}
});
return pageElems
@@ -708,51 +759,47 @@
}
- // art_alphacoders(图片结构调整)
- function art_alphacoders_beforeFunction_0() {
- let pageElems1 = document.querySelectorAll('.container-masonry > div')
- document.querySelector('.container-masonry').style.height = 'auto'
- pageElems1.forEach(function (one) {
- one.setAttribute('style','float: left');
- });
- }
-
-
- // art_alphacoders 的插入前函数(图片结构调整)
- function art_alphacoders_beforeFunction(pageElems) {
+ // luochenzhimu 的插入前函数(加载图片)
+ function luochenzhimu_beforeFunction(pageElems) {
pageElems.forEach(function (one) {
- one.setAttribute('style','float: left');
+ let now = one.querySelector('img.thumb')
+ if (now) {
+ now.setAttribute('src', now.dataset.src)
+ }
});
return pageElems
}
- // 58pic 的插入前函数(加载图片)
- function _58pic_beforeFunction(pageElems) {
- let is_one = document.querySelector('.qtw-card.place-box.is-one');
- if (is_one && is_one.style.display != 'none') {
- is_one.setAttribute('style', 'display: none;')
- }
+ // iplaysoft 的插入前函数(加载图片)
+ function iplaysoft_postslist_beforeFunction(pageElems) {
pageElems.forEach(function (one) {
- let now = one.querySelector('img.lazy')
- if (now && now.getAttribute('src') != now.dataset.original) {
- now.setAttribute('src', now.dataset.original)
- now.setAttribute('style', 'display: block;')
+ let now = one.querySelector('img.lazyload')
+ if (now && !now.src) {
+ now.setAttribute('src', now.dataset.src)
+ now.setAttribute('srcset', now.dataset.src)
+ now.setAttribute('class', 'lazyloaded')
}
});
return pageElems
}
- // 游民星空攻略 的插入前函数(移除下一页底部的 "更多相关内容请关注:xxx" 文字)
- function gamersky_gl_beforeFunction(pageElems) {
+ // alphacoders_art 的插入前函数(图片结构调整)
+ function alphacoders_art_beforeFunction(pageElems) {
pageElems.forEach(function (one) {
- if (one.tagName === 'P' && one.textContent.indexOf('更多相关内容请关注') > -1) {
- one.style.display = 'none';
- }
+ one.setAttribute('style','float: left');
});
return pageElems
}
+ // alphacoders_art(图片结构调整)
+ function alphacoders_art_beforeFunction_0() {
+ let pageElems1 = document.querySelectorAll('.container-masonry > div')
+ document.querySelector('.container-masonry').style.height = 'auto'
+ pageElems1.forEach(function (one) {
+ one.setAttribute('style','float: left');
+ });
+ }
// 启用/禁用 (当前网站)
@@ -806,6 +853,15 @@
};
+ // 生成 ID
+ function generateID() {
+ let num = 0
+ for (let val in DBSite) {
+ DBSite[val].SiteTypeID = num = num + 1;
+ }
+ }
+
+
// 滚动条事件
function windowScroll(fn1) {
var beforeScrollTop = document.documentElement.scrollTop,
@@ -871,7 +927,7 @@
curSite.pager.startFilter && curSite.pager.startFilter();
GM_xmlhttpRequest({
url: url,
- method: "GET",
+ method: 'GET',
timeout: 5000,
onload: function (response) {
try {
@@ -884,7 +940,7 @@
if (curSite.function && curSite.function.before) {
if (curSite.function.parameter) { // 如果指定了参数
pageElems = curSite.function.before(curSite.function.parameter);
- }else{
+ } else {
pageElems = curSite.function.before(pageElems);
}
}
From 493a7a705091b78f0b78419fb11ab612adabe445 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 5 Aug 2021 17:13:51 +0800
Subject: [PATCH 0067/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E4=BA=BF?=
=?UTF-8?q?=E7=A0=B4=E5=A7=90]=20=E6=94=AF=E6=8C=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 8557e4d29..ce338d6f2 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.4.1
+// @version 1.4.2
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、Apphot、不死鸟、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
+// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、Apphot、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
// @match *://*/*
// @connect www.gamersky.com
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
@@ -24,7 +24,7 @@
// 目前支持的网站
const websiteList = ['movie.douban.com', 'weibo.com', 'www.58pic.com',
'www.3dmgame.com', 'www.ali213.net', 'gl.ali213.net', 'www.gamersky.com',
- 'www.423down.com', 'apphot.cc', 'iao.su', 'www.appinn.com', 'www.weidown.com', 'www.luochenzhimu.com', 'www.iplaysoft.com', 'www.mpyit.com', 'www.yxssp.com',
+ 'www.423down.com', 'apphot.cc', 'iao.su', 'www.ypojie.com', 'www.appinn.com', 'www.weidown.com', 'www.luochenzhimu.com', 'www.iplaysoft.com', 'www.mpyit.com', 'www.yxssp.com',
'rarbgprx.org',
'pubmed.ncbi.nlm.nih.gov',
'www.afreecatv.com',
@@ -565,6 +565,7 @@
curSite = DBSite.weidown;
}
break;
+ case 'www.ypojie.com':
case 'www.luochenzhimu.com':
curSite = DBSite.luochenzhimu;
break;
From 701abb1658ba39554694eea8bc638d2e9c75c458 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Thu, 5 Aug 2021 20:12:45 +0800
Subject: [PATCH 0068/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 161 ++++++++++++++++++++++-------------------------
1 file changed, 76 insertions(+), 85 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index ce338d6f2..ff0b1e88e 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -2,7 +2,7 @@
// @name 自动无缝翻页
// @version 1.4.2
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、Apphot、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
+// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、APPHOT、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
// @match *://*/*
// @connect www.gamersky.com
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
@@ -148,6 +148,20 @@
scrollDelta: 1000
}
},
+ dux: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '//li[@class="next-page"]/a[@href]',
+ pageElement: 'css;.content > article',
+ HT_insert: ['css;.content > .pagination', 1],
+ replaceE: 'css;.content > .pagination',
+ scrollDelta: 1000
+ },
+ function: {
+ before: dux_beforeFunction
+ }
+ },
douban_subject_comments: {
SiteTypeID: 0,
pager: {
@@ -281,7 +295,7 @@
before: gamersky_gl_beforeFunction
}
},
- _423down_postslist: {
+ _423down: {
SiteTypeID: 0,
pager: {
type: 1,
@@ -292,18 +306,7 @@
scrollDelta: 1500
}
},
- apphot_postslist: {
- SiteTypeID: 0,
- pager: {
- type: 1,
- nextLink: '//div[@class="pagination"]//a[contains(text(),"下一页")][@href]',
- pageElement: 'css;div.content > article.excerpt',
- HT_insert: ['css;div.pagination', 1],
- replaceE: 'css;div.pagination',
- scrollDelta: 1500
- }
- },
- iao_su_postslist: {
+ iao_su: {
SiteTypeID: 0,
pager: {
type: 1,
@@ -314,10 +317,10 @@
scrollDelta: 800
},
function: {
- before: iao_su_postslist_beforeFunction
+ before: iao_su_beforeFunction
}
},
- appinn_postslist: {
+ appinn: {
SiteTypeID: 0,
pager: {
type: 1,
@@ -361,20 +364,6 @@
scrollDelta: 700
}
},
- luochenzhimu: {
- SiteTypeID: 0,
- pager: {
- type: 1,
- nextLink: '//li[@class="next-page"]/a[@href]',
- pageElement: 'css;.content > article',
- HT_insert: ['css;.content > .pagination', 1],
- replaceE: 'css;.content > .pagination',
- scrollDelta: 1000
- },
- function: {
- before: luochenzhimu_beforeFunction
- }
- },
iplaysoft_postslist: {
SiteTypeID: 0,
pager: {
@@ -497,66 +486,71 @@
}
}
};
- // 生成 ID
+ // 生成 SiteTypeID
generateID();
- // 用于脚本判断
+ // 用于脚本判断(针对部分特殊的网站)
const SiteType = {
GAMERSKY_GL: DBSite.gamersky_gl.SiteTypeID
};
- if (webType === 1) { // < 其他网站 >
+ // < 其他网站 >
+ if (webType === 1) {
switch (location.host) {
- case 'movie.douban.com':
- if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/comments') > -1) { // 短评
+ case 'apphot.cc': // < APPHOT >
+ case 'www.ypojie.com': // < 亿破姐 >
+ case 'www.luochenzhimu.com': // < 落尘之木 >
+ if (location.pathname.indexOf('.html') === -1) curSite = DBSite.dux;
+ if (location.host === 'apphot.cc') curSite.pager.scrollDelta = 1600; // 对于速度慢的网站,需要增加翻页敏感度
+ break;
+ // 以上几个都是 WordPress 的 DUX 主题
+ case 'movie.douban.com': // < 豆瓣评论 >
+ if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/comments') > -1) { // 短评
curSite = DBSite.douban_subject_comments;
- } else if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/reviews') > -1) { // 影评
+ } else if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/reviews') > -1) { // 影评
curSite = DBSite.douban_subject_reviews;
- } else if(location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/episode') > -1) { // 电视剧每集评论
+ } else if(location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/episode') > -1) { // 电视剧每集评论
curSite = DBSite.douban_subject_episode;
}
break;
- case 'weibo.com':
+ case 'weibo.com': // < 微博评论 >
curSite = DBSite.weibo_comment;
break;
- case 'www.58pic.com':
+ case 'www.58pic.com': // < 千图网 >
if (location.pathname.indexOf('/tupian/') > -1) {
curSite = DBSite._58pic;
} else if (location.pathname.indexOf('/c/') > -1) {
curSite = DBSite._58pic_c;
}
break;
- case 'www.3dmgame.com':
+ case 'www.3dmgame.com': // < 3DM >
curSite = DBSite._3dmgame;
break;
- case 'www.ali213.net':
+ case 'www.ali213.net': // < 游侠网 >
curSite = DBSite.ali213_www;
break;
- case 'gl.ali213.net':
+ case 'gl.ali213.net': // < 游侠网 - 攻略页 >
curSite = DBSite.ali213_gl;
document.lastElementChild.appendChild(document.createElement('style')).textContent = `.n_show_b {display: none !important;}` // 隐藏部分碍事元素
break;
- case 'www.gamersky.com':
+ case 'www.gamersky.com': // < 游民星空 >
if (location.pathname.indexOf('/ent/') > -1) {
curSite = DBSite.gamersky_ent;
} else {
curSite = DBSite.gamersky_gl;
}
break;
- case 'www.423down.com':
- if (location.pathname.indexOf('.html') === -1) curSite = DBSite._423down_postslist;
- break;
- case 'apphot.cc':
- if (location.pathname.indexOf('.html') === -1) curSite = DBSite.apphot_postslist;
+ case 'www.423down.com': // < 423down >
+ if (location.pathname.indexOf('.html') === -1) curSite = DBSite._423down;
break;
- case 'iao.su':
- curSite = DBSite.iao_su_postslist;
+ case 'iao.su': // < 不死鸟 >
+ curSite = DBSite.iao_su;
break;
- case 'www.appinn.com':
- curSite = DBSite.appinn_postslist;
+ case 'www.appinn.com': // < 小众软件 >
+ curSite = DBSite.appinn;
break;
- case 'www.weidown.com':
+ case 'www.weidown.com': // < 微当下载 >
if (location.pathname.indexOf('/search/') > -1) {
curSite = DBSite.weidown_search;
} else if (location.pathname.indexOf('/special/') > -1) {
@@ -565,38 +559,33 @@
curSite = DBSite.weidown;
}
break;
- case 'www.ypojie.com':
- case 'www.luochenzhimu.com':
- curSite = DBSite.luochenzhimu;
- break;
- case 'www.iplaysoft.com':
+ case 'www.iplaysoft.com': // < 异次元软件 >
if (location.pathname.indexOf('.html') > -1 || location.pathname.indexOf('/p/') > -1) { // 文章内
curSite = DBSite.iplaysoft_postcomments;
} else { // 其他页面
curSite = DBSite.iplaysoft_postslist;
}
break;
- case 'www.mpyit.com':
+ case 'www.mpyit.com': // < 老殁殁漂遥 >
if (location.pathname === '/' && !location.search) {
curSite = DBSite.mpyit;
} else if (location.pathname.indexOf('/category/') > -1 || location.search.indexOf('?s=') > -1) {
curSite = DBSite.mpyit_category;
}
break;
- case 'www.yxssp.com':
+ case 'www.yxssp.com': // < 异星软件空间 >
curSite = DBSite.yxssp;
break;
- case 'rarbgprx.org':
+ case 'rarbgprx.org': // < RARBG >
curSite = DBSite.rarbgprx;
break;
- case 'pubmed.ncbi.nlm.nih.gov':
+ case 'pubmed.ncbi.nlm.nih.gov': // < 国外学术网站 >
curSite = DBSite.pubmed_postslist;
break;
-
- case 'www.afreecatv.com':
+ case 'www.afreecatv.com': // < 直播网站 >
curSite = DBSite.afreecatv;
break;
- case 'art.alphacoders.com':
+ case 'art.alphacoders.com': // < 壁纸网站 >
curSite = DBSite.alphacoders_art;
setTimeout(alphacoders_art_beforeFunction_0, 1000);
break;
@@ -605,11 +594,12 @@
case 'mobile.alphacoders.com':
curSite = DBSite.alphacoders_wall;
break;
- case 'fitgirl-repacks.site':
+ case 'fitgirl-repacks.site': // < 游戏下载网站 >
curSite = DBSite.fitgirl;
break;
}
- } else if (webType === 2) { // < 所有 Discuz!论坛 >
+ // < 所有 Discuz!论坛 >
+ } else if (webType === 2) {
if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾)
if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表
if (document.getElementById('autopbn')) { // 判断是否有 [下一页] 按钮
@@ -620,9 +610,9 @@
} else if (location.pathname.indexOf('thread') > -1) { // 帖子内
if (GM_getValue('menu_discuz_thread_page')) {
curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
}
- }else if(location.pathname.indexOf('search') > -1) { // 搜索结果
+ } else if(location.pathname.indexOf('search') > -1) { // 搜索结果
curSite = DBSite.discuz_search;
}
} else {
@@ -635,7 +625,7 @@
} else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内
if (GM_getValue('menu_discuz_thread_page')) {
curSite = DBSite.discuz_thread;
- hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
+ hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮
}
} else if (location.search.indexOf('mod=guide') > -1) { // 导读帖子列表
curSite = DBSite.discuz_guide;
@@ -645,11 +635,12 @@
curSite = DBSite.discuz_collection;
} else if (location.pathname.indexOf('search') > -1) { // 搜索结果
curSite = DBSite.discuz_search;
- } else { // 考虑到部分论坛的部分板块帖子列表 URL 是自定义的
+ } else { // 考虑到部分论坛的部分板块帖子列表 URL 是自定义的
curSite = DBSite.discuz_forum;
}
}
- } else if (webType === 3) { // < 所有 Flarum 论坛 >
+ // < 所有 Flarum 论坛 >
+ } else if (webType === 3) {
curSite = DBSite.flarum;
}
@@ -719,6 +710,18 @@
}
+ // dux 的插入前函数(加载图片)
+ function dux_beforeFunction(pageElems) {
+ pageElems.forEach(function (one) {
+ let now = one.querySelector('img.thumb[data-src]')
+ if (now) {
+ now.setAttribute('src', now.dataset.src)
+ }
+ });
+ return pageElems
+ }
+
+
// 58pic 的插入前函数(加载图片)
function _58pic_beforeFunction(pageElems) {
let is_one = document.querySelector('.qtw-card.place-box.is-one');
@@ -748,7 +751,7 @@
// iao.su 的插入前函数(加载图片)
- function iao_su_postslist_beforeFunction(pageElems) {
+ function iao_su_beforeFunction(pageElems) {
pageElems.forEach(function (one) {
let now = one.getElementsByClassName('post-card')[0]
if (now) {
@@ -760,18 +763,6 @@
}
- // luochenzhimu 的插入前函数(加载图片)
- function luochenzhimu_beforeFunction(pageElems) {
- pageElems.forEach(function (one) {
- let now = one.querySelector('img.thumb')
- if (now) {
- now.setAttribute('src', now.dataset.src)
- }
- });
- return pageElems
- }
-
-
// iplaysoft 的插入前函数(加载图片)
function iplaysoft_postslist_beforeFunction(pageElems) {
pageElems.forEach(function (one) {
From ae39a6bfd2504f76a317c2909f9b329da245fdde Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 6 Aug 2021 00:59:41 +0800
Subject: [PATCH 0069/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E5=8F=A4?=
=?UTF-8?q?=E9=A3=8E=E6=BC=AB=E7=94=BB=E7=BD=91]=20=E6=94=AF=E6=8C=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 148 +++++++++++++++++++++++++++++++++++++++++------
1 file changed, 129 insertions(+), 19 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index ff0b1e88e..1f2949fae 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.4.2
+// @version 1.4.3
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、APPHOT、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
+// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、APPHOT、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、古风漫画网、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
// @match *://*/*
// @connect www.gamersky.com
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
@@ -25,6 +25,7 @@
const websiteList = ['movie.douban.com', 'weibo.com', 'www.58pic.com',
'www.3dmgame.com', 'www.ali213.net', 'gl.ali213.net', 'www.gamersky.com',
'www.423down.com', 'apphot.cc', 'iao.su', 'www.ypojie.com', 'www.appinn.com', 'www.weidown.com', 'www.luochenzhimu.com', 'www.iplaysoft.com', 'www.mpyit.com', 'www.yxssp.com',
+ 'www.gufengmh8.com',
'rarbgprx.org',
'pubmed.ncbi.nlm.nih.gov',
'www.afreecatv.com',
@@ -64,6 +65,7 @@
nextText: 按钮文本,只有按钮文本为该文本时才会点击按钮加载下一页,避免一瞬间加载太多次下一页
intervals: 点击间隔时间,对于没有按钮文字变化的按钮,可以手动指定间隔时间,单位:ms
3 = 依靠元素距离可视区域底部的距离来触发翻页
+ 4 = 针对部分简单动态加载的网站
HT_insert:
1 = 插入该元素本身的前面;
2 = 插入该元素当中,第一个子元素前面;
@@ -484,6 +486,18 @@
replaceE: 'css;nav.navigation.paging-navigation',
scrollDelta: 2000
}
+ },
+ gufengmh8: {
+ SiteTypeID: 0,
+ pager: {
+ type: 4,
+ pageElement: 'css;body > script:first-child',
+ HT_insert: ['css;#images', 3],
+ intervals: 5000,
+ functionNext: gufengmh8_functionNext,
+ functionAdd: gufengmh8_functionAdd,
+ scrollDelta: 2333
+ }
}
};
// 生成 SiteTypeID
@@ -576,6 +590,9 @@
case 'www.yxssp.com': // < 异星软件空间 >
curSite = DBSite.yxssp;
break;
+ case 'www.gufengmh8.com': // < 古风漫画网 >
+ curSite = DBSite.gufengmh8;
+ break;
case 'rarbgprx.org': // < RARBG >
curSite = DBSite.rarbgprx;
break;
@@ -653,7 +670,7 @@
function pageLoading() {
if (curSite.SiteTypeID > 0) {
windowScroll(function (direction, e) {
- if (direction === "down") { // 下滑才准备翻页
+ if (direction === 'down') { // 下滑才准备翻页
let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop,
scrollHeight = window.innerHeight || document.documentElement.clientHeight,
scrollDelta = curSite.pager.scrollDelta;
@@ -683,8 +700,17 @@
}
}
}
- } else { // 翻页类型 1
+ } else if (curSite.pager.type === 1) { // 翻页类型 1
ShowPager.loadMorePage();
+ } else if (curSite.pager.type === 4) { // 翻页类型 4
+ if (curSite.SiteTypeID > 0) {
+ curSite.pager.functionNext();
+ if (curSite.pager.intervals) {
+ let _SiteTypeID = curSite.SiteTypeID;
+ curSite.SiteTypeID = 0;
+ setTimeout(function(){curSite.SiteTypeID = _SiteTypeID;}, curSite.pager.intervals)
+ }
+ }
}
}
}
@@ -794,6 +820,63 @@
}
+ // gufengmh8
+ function gufengmh8_functionNext() {
+ if (curSite.pageUrl) { // 如果已经有下一页的 URL 则直接获取
+ getPageElems(curSite.pageUrl)
+ } else {
+ let pageElems = document.querySelector(curSite.pager.pageElement.replace('css;', '')); // 寻找数据所在元素
+ if (pageElems) {
+ let comicUrl, nextId;
+ pageElems.textContent.split(';').forEach(function (one){ // 分号 ; 分割为数组并遍历
+ //console.log(one)
+ if (one.indexOf('comicUrl') > -1) { // 下一页 URL 前半部分
+ comicUrl = one.split('"')[1];
+ } else if (one.indexOf('nextChapterData') > -1) { // 下一页 URL 的后半部分 ID
+ nextId = one.split('"id":')[1].split(',')[0];
+ }
+ })
+ if (comicUrl && nextId && nextId != 'null') { // 组合到一起就是下一页 URL
+ curSite.pageUrl = comicUrl + nextId + '.html'
+ //console.log(curSite.pageUrl)
+ getPageElems(curSite.pageUrl); // 访问下一页 URL 获取
+ }
+ }
+ }
+ }
+
+ // gufengmh8
+ function gufengmh8_functionAdd(pageElems) {
+ if (pageElems) {
+ curSite.pageUrl = ''; // 留空后,下一页 URL 依然交给 gufengmh8_function 函数获取(方便点)
+ pageElems = pageElems[0];
+ //console.log(pageElems)
+ let chapterImages, chapterPath;
+ //console.log(pageElems.textContent)
+ document.querySelector(curSite.pager.pageElement.replace('css;', '')).innerText = pageElems.textContent; // 将当前网页内的数据所在元素内容改为刚刚获取的下一页数据内容,以便循环获取下一页 URL(gufengmh8_function 函数)
+ pageElems.textContent.split(';').forEach(function (one){ // 分号 ; 分割为数组并遍历
+ //console.log(one)
+ if (one.indexOf('chapterImages') > -1) { // 图片文件名数组
+ chapterImages = one.replace(/^.+\[/, '').replace(']', '').replaceAll('"', '').split(',')
+ } else if (one.indexOf('chapterPath') > -1) { // 图片文件路径
+ chapterPath = one.split('"')[1];
+ } else if (one.indexOf('pageTitle') > -1) { // 网页标题
+ window.document.title = one.split('"')[1]; // 修改当前网页标题为下一页的标题
+ }
+ })
+ if (chapterImages && chapterPath) {
+ let _img = '';
+ chapterImages.forEach(function (one2){ // 遍历图片文件名数组,组合为 img 标签
+ _img += '
'
+ //console.log('https://res.xiaoqinre.com/' + chapterPath + one2)
+ })
+ document.querySelector(curSite.pager.HT_insert[0].replace('css;', '')).insertAdjacentHTML(addTo(curSite.pager.HT_insert[1]), _img); // 将 img 标签插入到网页中
+
+ }
+ }
+ }
+
+
// 启用/禁用 (当前网站)
function menu_disable(type) {
switch(type) {
@@ -854,6 +937,47 @@
}
+ // 类型 4 专用
+ function getPageElems(url) {
+ GM_xmlhttpRequest({
+ url: url,
+ method: 'GET',
+ timeout: 5000,
+ onload: function (response) {
+ try {
+ //console.log(`${response.responseText}`)
+ var newBody = ShowPager.createDocumentByString(response.responseText);
+ let pageElems = getAllElements(curSite.pager.pageElement, newBody, newBody);
+ if (pageElems.length >= 0) {
+ curSite.pager.functionAdd(pageElems)
+ }
+ } catch (e) {
+ console.log(e);
+ }
+ }
+ });
+ }
+
+
+ // 插入位置
+ function addTo(num) {
+ switch (num) {
+ case 1:
+ return 'beforebegin'
+ break;
+ case 2:
+ return 'afterbegin'
+ break;
+ case 3:
+ return 'beforeend'
+ break;
+ case 4:
+ return 'afterend'
+ break;
+ }
+ }
+
+
// 滚动条事件
function windowScroll(fn1) {
var beforeScrollTop = document.documentElement.scrollTop,
@@ -937,21 +1061,7 @@
}
}
// 插入位置
- let addTo;
- switch (curSite.pager.HT_insert[1]) {
- case 1:
- addTo = "beforebegin"
- break;
- case 2:
- addTo = "afterbegin"
- break;
- case 3:
- addTo = "beforeend"
- break;
- case 4:
- addTo = "afterend"
- break;
- }
+ let addTo = addTo(curSite.pager.HT_insert[1]);
// 插入新页面元素
pageElems.forEach(function (one) {
toElement.insertAdjacentElement(addTo, one);
From ea524a9c78b90a5fbe9eebafc5fd105128674224 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 6 Aug 2021 11:39:36 +0800
Subject: [PATCH 0070/2070] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20=E4=B8=8A?=
=?UTF-8?q?=E4=B8=AA=E7=89=88=E6=9C=AC=E6=9B=B4=E6=96=B0=E5=AF=BC=E8=87=B4?=
=?UTF-8?q?=E7=9A=84=E7=BF=BB=E9=A1=B5=E5=BC=82=E5=B8=B8=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 1f2949fae..e9e64ba2c 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.4.3
+// @version 1.4.4
// @author X.I.U
// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、APPHOT、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、古风漫画网、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
// @match *://*/*
@@ -1061,10 +1061,10 @@
}
}
// 插入位置
- let addTo = addTo(curSite.pager.HT_insert[1]);
+ let addTo1 = addTo(curSite.pager.HT_insert[1]);
// 插入新页面元素
pageElems.forEach(function (one) {
- toElement.insertAdjacentElement(addTo, one);
+ toElement.insertAdjacentElement(addTo1, one);
});
// 替换待替换元素
try {
From 6339c681fd688501c2a2287fbcdfc457c3b3ecd6 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 6 Aug 2021 11:48:22 +0800
Subject: [PATCH 0071/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[=E7=99=BE?=
=?UTF-8?q?=E5=BA=A6=E6=90=9C=E7=B4=A2]=20=E6=94=AF=E6=8C=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 26 ++++++++++++++++++++------
README.md | 2 +-
2 files changed, 21 insertions(+), 7 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index e9e64ba2c..3cb52023b 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.4.4
+// @version 1.4.5
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、APPHOT、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、古风漫画网、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
+// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、百度、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、APPHOT、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、古风漫画网、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
// @match *://*/*
// @connect www.gamersky.com
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
@@ -22,7 +22,7 @@
'use strict';
var webType, curSite = {SiteTypeID: 0};
// 目前支持的网站
- const websiteList = ['movie.douban.com', 'weibo.com', 'www.58pic.com',
+ const websiteList = ['www.baidu.com', 'movie.douban.com', 'weibo.com', 'www.58pic.com',
'www.3dmgame.com', 'www.ali213.net', 'gl.ali213.net', 'www.gamersky.com',
'www.423down.com', 'apphot.cc', 'iao.su', 'www.ypojie.com', 'www.appinn.com', 'www.weidown.com', 'www.luochenzhimu.com', 'www.iplaysoft.com', 'www.mpyit.com', 'www.yxssp.com',
'www.gufengmh8.com',
@@ -164,6 +164,17 @@
before: dux_beforeFunction
}
},
+ baidu: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '//div[@id="page"]//a[contains(text(),"下一页")][@href]',
+ pageElement: 'css;#content_left > *',
+ HT_insert: ['css;#content_left', 3],
+ replaceE: 'css;#page',
+ scrollDelta: 1200
+ }
+ },
douban_subject_comments: {
SiteTypeID: 0,
pager: {
@@ -519,6 +530,9 @@
if (location.host === 'apphot.cc') curSite.pager.scrollDelta = 1600; // 对于速度慢的网站,需要增加翻页敏感度
break;
// 以上几个都是 WordPress 的 DUX 主题
+ case 'www.baidu.com': // < 百度搜索 >
+ if (location.pathname === '/s') curSite = DBSite.baidu;
+ break;
case 'movie.douban.com': // < 豆瓣评论 >
if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/comments') > -1) { // 短评
curSite = DBSite.douban_subject_comments;
@@ -945,7 +959,7 @@
timeout: 5000,
onload: function (response) {
try {
- //console.log(`${response.responseText}`)
+ //console.log('最终 URL:' + response.finalUrl, '返回内容:' + response.responseText)
var newBody = ShowPager.createDocumentByString(response.responseText);
let pageElems = getAllElements(curSite.pager.pageElement, newBody, newBody);
if (pageElems.length >= 0) {
@@ -1035,7 +1049,7 @@
if (curSite.pager) {
let curPageEle = getElementByXpath(curSite.pager.nextLink);
var url = this.getFullHref(curPageEle);
- //console.log(`${url} ${curPageEle} ${curSite.pageUrl}`);
+ console.log(`${url} ${curPageEle} ${curSite.pageUrl}`);
if (url === '') return;
if (curSite.pageUrl === url) return;// 避免重复加载相同的页面
curSite.pageUrl = url;
@@ -1047,7 +1061,7 @@
timeout: 5000,
onload: function (response) {
try {
- //console.log(`${response.responseText}`)
+ //console.log('最终 URL:' + response.finalUrl, '返回内容:' + response.responseText)
var newBody = ShowPager.createDocumentByString(response.responseText);
let pageElems = getAllElements(curSite.pager.pageElement, newBody, newBody);
let toElement = getAllElements(curSite.pager.HT_insert[0])[0];
diff --git a/README.md b/README.md
index a9cd7c2b3..43b58e0bf 100644
--- a/README.md
+++ b/README.md
@@ -22,7 +22,7 @@
| [
](https://www.zhihu.com/people/xiu2) | **知乎 增强** | **移除登录弹窗**、一键收起回答、屏蔽用户、屏蔽关键词、快... | **[安装](https://greasyfork.org/zh-CN/scripts/419081)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhihu-Enhanced.user.js)** |
| [
](https://www.v2ex.com/) | **V2ex 增强** | **自动签到**、链接转图片、自动无缝翻页、新标签页打开链接... | **[安装](https://greasyfork.org/zh-CN/scripts/424246)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/V2ex-Enhanced.user.js)** |
| [
](https://github.com/XIU2) | **Github 增强** | **高速下载** Git Clone/SSH、Release、Raw、Code(ZIP) 文件... | **[安装](https://greasyfork.org/zh-CN/scripts/412245)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/GithubEnhanced-High-Speed-Download.user.js)** |
-| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | **所有 Discuz! / Flarum 论坛**、豆瓣、微博、千图网、423Do... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
+| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | **所有 Discuz! / Flarum 论坛**、百度、豆瓣、微博、千图网... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/413593)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Beautification.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 增强** | **自动回复**、自动无缝翻页、清理置顶帖子、自动滚动至隐藏... | **[安装](https://greasyfork.org/zh-CN/scripts/412890)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Enhanced.user.js)** |
| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 美化** | 精简多余内容、样式优化、宽屏显示 | **[安装](https://greasyfork.org/zh-CN/scripts/412361)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Beautification.user.js)** |
From c93b026e6f4e1af9f4e220330e666f1c6f0265f0 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 6 Aug 2021 13:00:11 +0800
Subject: [PATCH 0072/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 131 +++++++++++++++++++++++++----------------------
1 file changed, 69 insertions(+), 62 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 3cb52023b..c5091621d 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -997,59 +997,54 @@
var beforeScrollTop = document.documentElement.scrollTop,
fn = fn1 || function () {};
setTimeout(function () { // 延时执行,避免刚载入到页面就触发翻页事件
- window.addEventListener("scroll", function (e) {
+ window.addEventListener('scroll', function (e) {
var afterScrollTop = document.documentElement.scrollTop,
delta = afterScrollTop - beforeScrollTop;
if (delta == 0) return false;
- fn(delta > 0 ? "down" : "up", e);
+ fn(delta > 0 ? 'down' : 'up', e);
beforeScrollTop = afterScrollTop;
}, false);
}, 1000)
}
- var ShowPager = { // 修改自 https://greasyfork.org/scripts/14178
+ // 修改自 https://greasyfork.org/scripts/14178 , https://github.com/machsix/Super-preloader
+ var ShowPager = {
getFullHref: function (e) {
if(e == null) return '';
- "string" != typeof e && (e = e.getAttribute("href"));
+ 'string' != typeof e && (e = e.getAttribute('href'));
var t = this.getFullHref.a;
- return t || (this.getFullHref.a = t = document.createElement("a")), t.href = e, t.href;
+ if (t) {return t}
+ ((this.getFullHref.a = t = document.createElement('a')), t.href = e, t.href)
+ if (t.href) {return t.href}
+ //return t || ((this.getFullHref.a = t = document.createElement('a')), t.href = e, t.href);
},
createDocumentByString: function (e) {
if (e) {
- if ("HTML" !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, "application/xhtml+xml");
+ if ('HTML' !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, 'application/xhtml+xml');
var t;
- try {
- t = (new DOMParser).parseFromString(e, "text/html");
- } catch (e) {
- }
+ try { t = (new DOMParser).parseFromString(e, 'text/html');} catch (e) {}
if (t) return t;
- if (document.implementation.createHTMLDocument) t = document.implementation.createHTMLDocument("ADocument"); else try {
- (t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)),
- t.documentElement.appendChild(t.createElement("head")), t.documentElement.appendChild(t.createElement("body"));
- } catch (e) {
+ if (document.implementation.createHTMLDocument) {
+ t = document.implementation.createHTMLDocument('ADocument');
+ } else {
+ try {((t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)), t.documentElement.appendChild(t.createElement('head')), t.documentElement.appendChild(t.createElement('body')));} catch (e) {}
}
if (t) {
- var r = document.createRange();
+ var r = document.createRange(),
+ n = r.createContextualFragment(e);
r.selectNodeContents(document.body);
- var n = r.createContextualFragment(e);
t.body.appendChild(n);
- for (var a, o = {
- TITLE: !0,
- META: !0,
- LINK: !0,
- STYLE: !0,
- BASE: !0
- }, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
+ for (var a, o = { TITLE: !0, META: !0, LINK: !0, STYLE: !0, BASE: !0}, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
return t;
}
- } else console.error("没有找到要转成DOM的字符串");
+ } else console.error('没有找到要转成 DOM 的字符串');
},
loadMorePage: function () {
if (curSite.pager) {
let curPageEle = getElementByXpath(curSite.pager.nextLink);
var url = this.getFullHref(curPageEle);
- console.log(`${url} ${curPageEle} ${curSite.pageUrl}`);
+ //console.log(`${url} ${curPageEle} ${curSite.pageUrl}`);
if (url === '') return;
if (curSite.pageUrl === url) return;// 避免重复加载相同的页面
curSite.pageUrl = url;
@@ -1063,8 +1058,9 @@
try {
//console.log('最终 URL:' + response.finalUrl, '返回内容:' + response.responseText)
var newBody = ShowPager.createDocumentByString(response.responseText);
- let pageElems = getAllElements(curSite.pager.pageElement, newBody, newBody);
- let toElement = getAllElements(curSite.pager.HT_insert[0])[0];
+ let pageElems = getAllElements(curSite.pager.pageElement, newBody, newBody),
+ toElement = getAllElements(curSite.pager.HT_insert[0])[0];
+
if (pageElems.length >= 0) {
// 如果有插入前函数就执行函数
if (curSite.function && curSite.function.before) {
@@ -1074,12 +1070,14 @@
pageElems = curSite.function.before(pageElems);
}
}
+
// 插入位置
let addTo1 = addTo(curSite.pager.HT_insert[1]);
// 插入新页面元素
pageElems.forEach(function (one) {
toElement.insertAdjacentElement(addTo1, one);
});
+
// 替换待替换元素
try {
let oriE = getAllElements(curSite.pager.replaceE);
@@ -1110,44 +1108,53 @@
},
};
-
- function getElementByXpath(e, t, r) {
- r = r || document, t = t || r;
- try {
- return r.evaluate(e, t, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
- } catch (t) {
- return void console.error("无效的xpath");
- }
+ function getElementByCSS(css, contextNode = document) {
+ return contextNode.querySelector(css);
}
-
-
- function getAllElements(e, t, r, n, o) {
- let getAllElementsByXpath = function(e, t, r) {
- return r = r || document, t = t || r, r.evaluate(e, t, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
- }
-
- var i, s = [];
- if (!e) return s;
- if (r = r || document, n = n || window, o = o || void 0, t = t || r, "string" == typeof e) i = 0 === e.search(/^css;/i) ? function getAllElementsByCSS(e, t) {
- return (t || document).querySelectorAll(e);
- }(e.slice(4), t) : getAllElementsByXpath(e, t, r); else {
- if (!(i = e(r, n, o))) return s;
- if (i.nodeType) return s[0] = i, s;
- }
- return function makeArray(e) {
- var t, r, n, o = [];
- if (e.pop) {
- for (t = 0, r = e.length; t < r; t++) (n = e[t]) && (n.nodeType ? o.push(n) : o = o.concat(makeArray(n)));
- return a()(o);
+ function getAllElementsByCSS(css, contextNode = document) {
+ return [].slice.call(contextNode.querySelectorAll(css));
+ }
+ function getElementByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
+ try {
+ const result = doc.evaluate(xpath, contextNode, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
+ // 应该总是返回一个元素节点
+ return result.singleNodeValue && result.singleNodeValue.nodeType === 1 && result.singleNodeValue;
+ } catch (err) {
+ throw new Error(`Invalid xpath: ${xpath}`);
}
- if (e.item) {
- for (t = e.length; t;) o[--t] = e[t];
- return o;
+ }
+ function getAllElementsByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
+ const result = [];
+ try {
+ const query = doc.evaluate(xpath, contextNode, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
+ for (let i = 0; i < query.snapshotLength; i++) {
+ const node = query.snapshotItem(i);
+ // 如果是 Element 节点
+ if (node.nodeType === 1) result.push(node);
+ }
+ } catch (err) {
+ throw new Error(`无效 Xpath: ${xpath}`);
}
- if (e.iterateNext) {
- for (t = e.snapshotLength; t;) o[--t] = e.snapshotItem(t);
- return o;
+ return result;
+ }
+ function getAllElements(selector, contextNode = undefined, doc = document, win = window, _cplink = undefined) {
+ if (!selector) return [];
+ contextNode = contextNode || doc;
+ if (typeof selector === 'string') {
+ if (selector.search(/^css;/i) === 0) {
+ return getAllElementsByCSS(selector.slice(4), contextNode);
+ } else {
+ return getAllElementsByXpath(selector, contextNode, doc);
+ }
+ } else {
+ const query = selector(doc, win, _cplink);
+ if (!Array.isArray(query)) {
+ throw new Error('getAllElements 返回错误类型');
+ } else {
+ return query;
+ }
}
- }(i);
}
})();
\ No newline at end of file
From c4845dfb22b14a8a9e4415934dad1b400f5b272c Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 6 Aug 2021 20:02:46 +0800
Subject: [PATCH 0073/2070] README.md
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 43b58e0bf..c427e94fc 100644
--- a/README.md
+++ b/README.md
@@ -27,7 +27,7 @@
| [
](https://bbs.3dmgame.com) | **3DM论坛 增强** | **自动回复**、自动无缝翻页、清理置顶帖子、自动滚动至隐藏... | **[安装](https://greasyfork.org/zh-CN/scripts/412890)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Enhanced.user.js)** |
| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 美化** | 精简多余内容、样式优化、宽屏显示 | **[安装](https://greasyfork.org/zh-CN/scripts/412361)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Beautification.user.js)** |
| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 增强** | 自动签到、**自动回复**、自动无缝翻页、快捷回到顶部、附件... | **[安装](https://greasyfork.org/zh-CN/scripts/412362)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Enhanced.user.js)** |
-| [
](https://www.lanzou.com) | **蓝奏云网盘 增强 \*** | 刷新不回根目录、**右键显示菜单**、自动显示更多文件、自动... | **[安装](https://greasyfork.org/zh-CN/scripts/419224)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Lanzou-Enhanced.user.js)** |
+| [
](https://www.lanzou.com) | **蓝奏云网盘 增强 \*** | 刷新不回根目录、**右键显示菜单**、显示更多文件、自动密码... | **[安装](https://greasyfork.org/zh-CN/scripts/419224)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Lanzou-Enhanced.user.js)** |
| [
](https://translate.google.cn) | ~~_**Google 翻译 美化**_~~ | ~~_精简多余内容、修复翻译结果溢出屏幕问题_~~ | ~~_**[安装](https://zhuanlan.zhihu.com/p/286815739)** \| **[备用](https://zhuanlan.zhihu.com/p/286815739)**_~~ |
| [
](https://github.com/XIU2) | **新标签页打开链接 \*** | 将网页中所有链接改为新标签页打开~ | **[安装](https://greasyfork.org/zh-CN/scripts/429714)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/TargetBlank.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/412681)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Beautification.user.js)** |
From 7edc75bf7dc2fb95e3f630531446f70d68caa6b1 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 6 Aug 2021 20:06:48 +0800
Subject: [PATCH 0074/2070] README.md
---
README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index c427e94fc..aaca373b7 100644
--- a/README.md
+++ b/README.md
@@ -25,8 +25,8 @@
| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | **所有 Discuz! / Flarum 论坛**、百度、豆瓣、微博、千图网... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/413593)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Beautification.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 增强** | **自动回复**、自动无缝翻页、清理置顶帖子、自动滚动至隐藏... | **[安装](https://greasyfork.org/zh-CN/scripts/412890)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Enhanced.user.js)** |
-| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 美化** | 精简多余内容、样式优化、宽屏显示 | **[安装](https://greasyfork.org/zh-CN/scripts/412361)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Beautification.user.js)** |
-| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | **智友邦论坛 增强** | 自动签到、**自动回复**、自动无缝翻页、快捷回到顶部、附件... | **[安装](https://greasyfork.org/zh-CN/scripts/412362)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Enhanced.user.js)** |
+| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | ~~_**智友邦论坛 美化**_~~ | ~~_精简多余内容、样式优化、宽屏显示_~~ | ~~_**[安装](https://greasyfork.org/zh-CN/scripts/412361)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Beautification.user.js)**_~~ |
+| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | ~~_**智友邦论坛 增强**_~~ | ~~_自动签到、**自动回复**、自动无缝翻页、快捷回到顶部、附件..._~~ | ~~_**[安装](https://greasyfork.org/zh-CN/scripts/412362)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Enhanced.user.js)**_~~ |
| [
](https://www.lanzou.com) | **蓝奏云网盘 增强 \*** | 刷新不回根目录、**右键显示菜单**、显示更多文件、自动密码... | **[安装](https://greasyfork.org/zh-CN/scripts/419224)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Lanzou-Enhanced.user.js)** |
| [
](https://translate.google.cn) | ~~_**Google 翻译 美化**_~~ | ~~_精简多余内容、修复翻译结果溢出屏幕问题_~~ | ~~_**[安装](https://zhuanlan.zhihu.com/p/286815739)** \| **[备用](https://zhuanlan.zhihu.com/p/286815739)**_~~ |
| [
](https://github.com/XIU2) | **新标签页打开链接 \*** | 将网页中所有链接改为新标签页打开~ | **[安装](https://greasyfork.org/zh-CN/scripts/429714)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/TargetBlank.user.js)** |
From 18a13ca9d70510e1f80c56c30aff90885c441cc6 Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Fri, 6 Aug 2021 20:11:58 +0800
Subject: [PATCH 0075/2070] README.md
---
README.md | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/README.md b/README.md
index aaca373b7..a4968be54 100644
--- a/README.md
+++ b/README.md
@@ -25,15 +25,15 @@
| [
](https://github.com/XIU2) | **自动无缝翻页 \*** | **所有 Discuz! / Flarum 论坛**、百度、豆瓣、微博、千图网... | **[安装](https://greasyfork.org/zh-CN/scripts/419215)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Autopage.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/413593)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Beautification.user.js)** |
| [
](https://bbs.3dmgame.com) | **3DM论坛 增强** | **自动回复**、自动无缝翻页、清理置顶帖子、自动滚动至隐藏... | **[安装](https://greasyfork.org/zh-CN/scripts/412890)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/3dm-Enhanced.user.js)** |
-| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | ~~_**智友邦论坛 美化**_~~ | ~~_精简多余内容、样式优化、宽屏显示_~~ | ~~_**[安装](https://greasyfork.org/zh-CN/scripts/412361)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Beautification.user.js)**_~~ |
-| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | ~~_**智友邦论坛 增强**_~~ | ~~_自动签到、**自动回复**、自动无缝翻页、快捷回到顶部、附件..._~~ | ~~_**[安装](https://greasyfork.org/zh-CN/scripts/412362)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Enhanced.user.js)**_~~ |
| [
](https://www.lanzou.com) | **蓝奏云网盘 增强 \*** | 刷新不回根目录、**右键显示菜单**、显示更多文件、自动密码... | **[安装](https://greasyfork.org/zh-CN/scripts/419224)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Lanzou-Enhanced.user.js)** |
-| [
](https://translate.google.cn) | ~~_**Google 翻译 美化**_~~ | ~~_精简多余内容、修复翻译结果溢出屏幕问题_~~ | ~~_**[安装](https://zhuanlan.zhihu.com/p/286815739)** \| **[备用](https://zhuanlan.zhihu.com/p/286815739)**_~~ |
| [
](https://github.com/XIU2) | **新标签页打开链接 \*** | 将网页中所有链接改为新标签页打开~ | **[安装](https://greasyfork.org/zh-CN/scripts/429714)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/TargetBlank.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 美化** | 精简多余内容、样式优化 | **[安装](https://greasyfork.org/zh-CN/scripts/412681)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Beautification.user.js)** |
| [
](https://www.52pojie.cn) | **吾爱破解论坛 增强** | **自动签到**、自动无缝翻页、屏蔽导读悬赏贴 (最新发表页)... | **[安装](https://greasyfork.org/zh-CN/scripts/412680)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/52pojie-Enhanced.user.js)** |
| [
](https://hostloc.com) | **全球主机交流论坛 增强 \*** | **自动访问空间(22积分)、屏蔽用户**、屏蔽关键词、自动无缝翻... | **[安装](https://greasyfork.org/zh-CN/scripts/414005)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Hostloc-Enhanced.user.js)** |
| [
](https://store.steampowered.com) | **Steam 创意工坊大图 修复** | 修复 Steam 创意工坊预览大图无法显示的问题 | **[安装](https://github.com/XIU2/UserScript/raw/master/SteamWorkshopImageRepair.user.js)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/SteamWorkshopImageRepair.user.js)** |
+| [
](https://translate.google.cn) | ~~_**Google 翻译 美化**_~~ | ~~_精简多余内容、修复翻译结果溢出屏幕问题_~~ | ~~_**[安装](https://zhuanlan.zhihu.com/p/286815739)** \| **[备用](https://zhuanlan.zhihu.com/p/286815739)**_~~ |
+| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | ~~_**智友邦论坛 美化**_~~ | ~~_精简多余内容、样式优化、宽屏显示_~~ | ~~_**[安装](https://greasyfork.org/zh-CN/scripts/412361)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Beautification.user.js)**_~~ |
+| [
](http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline) | ~~_**智友邦论坛 增强**_~~ | ~~_自动签到、**自动回复**、自动无缝翻页、快捷回到顶部、附件..._~~ | ~~_**[安装](https://greasyfork.org/zh-CN/scripts/412362)** \| **[备用](https://cdn.jsdelivr.net/gh/XIU2/UserScript@master/Zhiyoo-Enhanced.user.js)**_~~ |
> _脚本名称末尾 **`*`** 代表该脚本为**网友主动提出需求**而写的。如果你也有需求,可以[告诉我](https://github.com/XIU2/UserScript/issues/new/choose)!_
> _所有脚本均在 **Chrome、Firefox、Edge 浏览器 + Tampermonkey 扩展** 环境下测试通过!_
From 5cdde0ca9f21b7805d760139ff70bb8ac589e86f Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 7 Aug 2021 13:27:53 +0800
Subject: [PATCH 0076/2070] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
3dm-Enhanced.user.js | 166 ++++++++++++++++++------------------
52pojie-Enhanced.user.js | 167 ++++++++++++++++++------------------
Autopage.user.js | 137 ++++++++++++++----------------
Hostloc-Enhanced.user.js | 178 +++++++++++++++++++--------------------
V2ex-Enhanced.user.js | 134 ++++++++++++++---------------
Zhiyoo-Enhanced.user.js | 178 +++++++++++++++++++--------------------
6 files changed, 476 insertions(+), 484 deletions(-)
diff --git a/3dm-Enhanced.user.js b/3dm-Enhanced.user.js
index da01b7253..8a8ede5d3 100644
--- a/3dm-Enhanced.user.js
+++ b/3dm-Enhanced.user.js
@@ -194,29 +194,6 @@
}
- // 自动翻页
- function pageLoading() {
- if (curSite.SiteTypeID > 0){
- windowScroll(function (direction, e) {
- if (direction === "down") { // 下滑才准备翻页
- let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
- let scrollDelta = 666;
- if (document.documentElement.scrollHeight <= document.documentElement.clientHeight + scrollTop + scrollDelta) {
- if (curSite.SiteTypeID === SiteType.FORUM) { // 如果是各版块帖子列表则直接点下一页就行了
- let autopbn = document.querySelector('#autopbn');
- if (autopbn && autopbn.innerText == "下一页 »"){ // 如果已经在加载中了,就忽略
- autopbn.click();
- }
- }else{
- ShowPager.loadMorePage();
- }
- }
- }
- });
- }
- }
-
-
// 自动回复
function autoReply(){
if (loginStatus){
@@ -271,58 +248,73 @@
}
+ // 自动翻页
+ function pageLoading() {
+ if (curSite.SiteTypeID > 0){
+ windowScroll(function (direction, e) {
+ if (direction === 'down') { // 下滑才准备翻页
+ let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
+ let scrollDelta = 666;
+ if (document.documentElement.scrollHeight <= document.documentElement.clientHeight + scrollTop + scrollDelta) {
+ if (curSite.SiteTypeID === SiteType.FORUM) { // 如果是各版块帖子列表则直接点下一页就行了
+ let autopbn = document.querySelector('#autopbn');
+ if (autopbn && autopbn.innerText == "下一页 »"){ // 如果已经在加载中了,就忽略
+ autopbn.click();
+ }
+ }else{
+ ShowPager.loadMorePage();
+ }
+ }
+ }
+ });
+ }
+ }
+
+
// 滚动条事件
function windowScroll(fn1) {
var beforeScrollTop = document.documentElement.scrollTop,
fn = fn1 || function () {};
setTimeout(function () { // 延时执行,避免刚载入到页面就触发翻页事件
- window.addEventListener("scroll", function (e) {
+ window.addEventListener('scroll', function (e) {
var afterScrollTop = document.documentElement.scrollTop,
delta = afterScrollTop - beforeScrollTop;
if (delta == 0) return false;
- fn(delta > 0 ? "down" : "up", e);
+ fn(delta > 0 ? 'down' : 'up', e);
beforeScrollTop = afterScrollTop;
}, false);
}, 1000)
}
- var ShowPager = { // 修改自 https://greasyfork.org/scripts/14178
+ // 修改自 https://greasyfork.org/scripts/14178 , https://github.com/machsix/Super-preloader
+ var ShowPager = {
getFullHref: function (e) {
if(e == null) return '';
- "string" != typeof e && (e = e.getAttribute("href"));
+ 'string' != typeof e && (e = e.getAttribute('href'));
var t = this.getFullHref.a;
- return t || (this.getFullHref.a = t = document.createElement("a")), t.href = e, t.href;
+ return t || (this.getFullHref.a = t = document.createElement('a')), (t.href = e), t.href;
},
createDocumentByString: function (e) {
if (e) {
- if ("HTML" !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, "application/xhtml+xml");
+ if ('HTML' !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, 'application/xhtml+xml');
var t;
- try {
- t = (new DOMParser).parseFromString(e, "text/html");
- } catch (e) {
- }
+ try { t = (new DOMParser).parseFromString(e, 'text/html');} catch (e) {}
if (t) return t;
- if (document.implementation.createHTMLDocument) t = document.implementation.createHTMLDocument("ADocument"); else try {
- (t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)),
- t.documentElement.appendChild(t.createElement("head")), t.documentElement.appendChild(t.createElement("body"));
- } catch (e) {
+ if (document.implementation.createHTMLDocument) {
+ t = document.implementation.createHTMLDocument('ADocument');
+ } else {
+ try {((t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)), t.documentElement.appendChild(t.createElement('head')), t.documentElement.appendChild(t.createElement('body')));} catch (e) {}
}
if (t) {
- var r = document.createRange();
+ var r = document.createRange(),
+ n = r.createContextualFragment(e);
r.selectNodeContents(document.body);
- var n = r.createContextualFragment(e);
t.body.appendChild(n);
- for (var a, o = {
- TITLE: !0,
- META: !0,
- LINK: !0,
- STYLE: !0,
- BASE: !0
- }, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
+ for (var a, o = { TITLE: !0, META: !0, LINK: !0, STYLE: !0, BASE: !0}, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
return t;
}
- } else console.error("没有找到要转成DOM的字符串");
+ } else console.error('没有找到要转成 DOM 的字符串');
},
loadMorePage: function () {
if (curSite.pager) {
@@ -371,45 +363,53 @@
}
},
};
-
-
- function getElementByXpath(e, t, r) {
- r = r || document, t = t || r;
- try {
- return r.evaluate(e, t, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
- } catch (t) {
- return void console.error("无效的xpath");
- }
+ function getElementByCSS(css, contextNode = document) {
+ return contextNode.querySelector(css);
}
-
-
- function getAllElements(e, t, r, n, o) {
- let getAllElementsByXpath = function(e, t, r) {
- return r = r || document, t = t || r, r.evaluate(e, t, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
- }
-
- var i, s = [];
- if (!e) return s;
- if (r = r || document, n = n || window, o = o || void 0, t = t || r, "string" == typeof e) i = 0 === e.search(/^css;/i) ? function getAllElementsByCSS(e, t) {
- return (t || document).querySelectorAll(e);
- }(e.slice(4), t) : getAllElementsByXpath(e, t, r); else {
- if (!(i = e(r, n, o))) return s;
- if (i.nodeType) return s[0] = i, s;
- }
- return function makeArray(e) {
- var t, r, n, o = [];
- if (e.pop) {
- for (t = 0, r = e.length; t < r; t++) (n = e[t]) && (n.nodeType ? o.push(n) : o = o.concat(makeArray(n)));
- return a()(o);
+ function getAllElementsByCSS(css, contextNode = document) {
+ return [].slice.call(contextNode.querySelectorAll(css));
+ }
+ function getElementByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
+ try {
+ const result = doc.evaluate(xpath, contextNode, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
+ // 应该总是返回一个元素节点
+ return result.singleNodeValue && result.singleNodeValue.nodeType === 1 && result.singleNodeValue;
+ } catch (err) {
+ throw new Error(`Invalid xpath: ${xpath}`);
}
- if (e.item) {
- for (t = e.length; t;) o[--t] = e[t];
- return o;
+ }
+ function getAllElementsByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
+ const result = [];
+ try {
+ const query = doc.evaluate(xpath, contextNode, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
+ for (let i = 0; i < query.snapshotLength; i++) {
+ const node = query.snapshotItem(i);
+ // 如果是 Element 节点
+ if (node.nodeType === 1) result.push(node);
+ }
+ } catch (err) {
+ throw new Error(`无效 Xpath: ${xpath}`);
}
- if (e.iterateNext) {
- for (t = e.snapshotLength; t;) o[--t] = e.snapshotItem(t);
- return o;
+ return result;
+ }
+ function getAllElements(selector, contextNode = undefined, doc = document, win = window, _cplink = undefined) {
+ if (!selector) return [];
+ contextNode = contextNode || doc;
+ if (typeof selector === 'string') {
+ if (selector.search(/^css;/i) === 0) {
+ return getAllElementsByCSS(selector.slice(4), contextNode);
+ } else {
+ return getAllElementsByXpath(selector, contextNode, doc);
+ }
+ } else {
+ const query = selector(doc, win, _cplink);
+ if (!Array.isArray(query)) {
+ throw new Error('getAllElements 返回错误类型');
+ } else {
+ return query;
+ }
}
- }(i);
}
})();
\ No newline at end of file
diff --git a/52pojie-Enhanced.user.js b/52pojie-Enhanced.user.js
index e4d7c4195..60df54ee1 100644
--- a/52pojie-Enhanced.user.js
+++ b/52pojie-Enhanced.user.js
@@ -184,30 +184,6 @@
pageLoading(); // 自动翻页
- // 自动翻页
- function pageLoading() {
- if (!menu_value('menu_pageLoading')) return
- if (curSite.SiteTypeID > 0) {
- windowScroll(function (direction, e) {
- if (direction === "down") { // 下滑才准备翻页
- let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
- let scrollDelta = curSite.pager.scrollDelta;
- if (document.documentElement.scrollHeight <= document.documentElement.clientHeight + scrollTop + scrollDelta) {
- if (curSite.pager.type === 1) {
- ShowPager.loadMorePage();
- } else {
- let autopbn = document.querySelector(curSite.pager.nextLink);
- if (autopbn && autopbn.innerText == curSite.pager.nextText) { // 如果正在加载,就不再点击
- autopbn.click();
- }
- }
- }
- }
- });
- }
- }
-
-
// 自动签到(后台)
function qianDao() {
if (!menu_value('menu_autoClockIn')) return
@@ -259,60 +235,75 @@
}
+ // 自动翻页
+ function pageLoading() {
+ if (!menu_value('menu_pageLoading')) return
+ if (curSite.SiteTypeID > 0) {
+ windowScroll(function (direction, e) {
+ if (direction === "down") { // 下滑才准备翻页
+ let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
+ let scrollDelta = curSite.pager.scrollDelta;
+ if (document.documentElement.scrollHeight <= document.documentElement.clientHeight + scrollTop + scrollDelta) {
+ if (curSite.pager.type === 1) {
+ ShowPager.loadMorePage();
+ } else {
+ let autopbn = document.querySelector(curSite.pager.nextLink);
+ if (autopbn && autopbn.innerText == curSite.pager.nextText) { // 如果正在加载,就不再点击
+ autopbn.click();
+ }
+ }
+ }
+ }
+ });
+ }
+ }
+
+
// 滚动条事件
function windowScroll(fn1) {
var beforeScrollTop = document.documentElement.scrollTop,
fn = fn1 || function () {};
setTimeout(function () { // 延时执行,避免刚载入到页面就触发翻页事件
- window.addEventListener("scroll", function (e) {
+ window.addEventListener('scroll', function (e) {
var afterScrollTop = document.documentElement.scrollTop,
delta = afterScrollTop - beforeScrollTop;
if (delta == 0) return false;
- fn(delta > 0 ? "down" : "up", e);
+ fn(delta > 0 ? 'down' : 'up', e);
beforeScrollTop = afterScrollTop;
}, false);
}, 1000)
}
- // 自动无缝翻页,修改自 https://greasyfork.org/scripts/14178
+ // 修改自 https://greasyfork.org/scripts/14178 , https://github.com/machsix/Super-preloader
function showPager() {
ShowPager = {
getFullHref: function (e) {
if(e == null) return '';
- "string" != typeof e && (e = e.getAttribute("href"));
+ 'string' != typeof e && (e = e.getAttribute('href'));
var t = this.getFullHref.a;
- return t || (this.getFullHref.a = t = document.createElement("a")), t.href = e, t.href;
+ return t || (this.getFullHref.a = t = document.createElement('a')), (t.href = e), t.href;
},
createDocumentByString: function (e) {
if (e) {
- if ("HTML" !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, "application/xhtml+xml");
+ if ('HTML' !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, 'application/xhtml+xml');
var t;
- try {
- t = (new DOMParser).parseFromString(e, "text/html");
- } catch (e) {
- }
+ try { t = (new DOMParser).parseFromString(e, 'text/html');} catch (e) {}
if (t) return t;
- if (document.implementation.createHTMLDocument) t = document.implementation.createHTMLDocument("ADocument"); else try {
- (t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)),
- t.documentElement.appendChild(t.createElement("head")), t.documentElement.appendChild(t.createElement("body"));
- } catch (e) {
+ if (document.implementation.createHTMLDocument) {
+ t = document.implementation.createHTMLDocument('ADocument');
+ } else {
+ try {((t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)), t.documentElement.appendChild(t.createElement('head')), t.documentElement.appendChild(t.createElement('body')));} catch (e) {}
}
if (t) {
- var r = document.createRange();
+ var r = document.createRange(),
+ n = r.createContextualFragment(e);
r.selectNodeContents(document.body);
- var n = r.createContextualFragment(e);
t.body.appendChild(n);
- for (var a, o = {
- TITLE: !0,
- META: !0,
- LINK: !0,
- STYLE: !0,
- BASE: !0
- }, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
+ for (var a, o = { TITLE: !0, META: !0, LINK: !0, STYLE: !0, BASE: !0}, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
return t;
}
- } else console.error("没有找到要转成DOM的字符串");
+ } else console.error('没有找到要转成 DOM 的字符串');
},
loadMorePage: function () {
if (curSite.pager) {
@@ -364,45 +355,53 @@
},
};
}
-
-
- function getElementByXpath(e, t, r) {
- r = r || document, t = t || r;
- try {
- return r.evaluate(e, t, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
- } catch (t) {
- return void console.error("无效的xpath");
- }
+ function getElementByCSS(css, contextNode = document) {
+ return contextNode.querySelector(css);
}
-
-
- function getAllElements(e, t, r, n, o) {
- let getAllElementsByXpath = function(e, t, r) {
- return r = r || document, t = t || r, r.evaluate(e, t, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
- }
-
- var i, s = [];
- if (!e) return s;
- if (r = r || document, n = n || window, o = o || void 0, t = t || r, "string" == typeof e) i = 0 === e.search(/^css;/i) ? function getAllElementsByCSS(e, t) {
- return (t || document).querySelectorAll(e);
- }(e.slice(4), t) : getAllElementsByXpath(e, t, r); else {
- if (!(i = e(r, n, o))) return s;
- if (i.nodeType) return s[0] = i, s;
- }
- return function makeArray(e) {
- var t, r, n, o = [];
- if (e.pop) {
- for (t = 0, r = e.length; t < r; t++) (n = e[t]) && (n.nodeType ? o.push(n) : o = o.concat(makeArray(n)));
- return a()(o);
+ function getAllElementsByCSS(css, contextNode = document) {
+ return [].slice.call(contextNode.querySelectorAll(css));
+ }
+ function getElementByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
+ try {
+ const result = doc.evaluate(xpath, contextNode, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
+ // 应该总是返回一个元素节点
+ return result.singleNodeValue && result.singleNodeValue.nodeType === 1 && result.singleNodeValue;
+ } catch (err) {
+ throw new Error(`Invalid xpath: ${xpath}`);
}
- if (e.item) {
- for (t = e.length; t;) o[--t] = e[t];
- return o;
+ }
+ function getAllElementsByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
+ const result = [];
+ try {
+ const query = doc.evaluate(xpath, contextNode, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
+ for (let i = 0; i < query.snapshotLength; i++) {
+ const node = query.snapshotItem(i);
+ // 如果是 Element 节点
+ if (node.nodeType === 1) result.push(node);
+ }
+ } catch (err) {
+ throw new Error(`无效 Xpath: ${xpath}`);
}
- if (e.iterateNext) {
- for (t = e.snapshotLength; t;) o[--t] = e.snapshotItem(t);
- return o;
+ return result;
+ }
+ function getAllElements(selector, contextNode = undefined, doc = document, win = window, _cplink = undefined) {
+ if (!selector) return [];
+ contextNode = contextNode || doc;
+ if (typeof selector === 'string') {
+ if (selector.search(/^css;/i) === 0) {
+ return getAllElementsByCSS(selector.slice(4), contextNode);
+ } else {
+ return getAllElementsByXpath(selector, contextNode, doc);
+ }
+ } else {
+ const query = selector(doc, win, _cplink);
+ if (!Array.isArray(query)) {
+ throw new Error('getAllElements 返回错误类型');
+ } else {
+ return query;
+ }
}
- }(i);
}
})();
\ No newline at end of file
diff --git a/Autopage.user.js b/Autopage.user.js
index c5091621d..a30342bee 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.4.5
+// @version 1.4.6
// @author X.I.U
// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、百度、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、APPHOT、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、古风漫画网、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
// @match *://*/*
@@ -674,79 +674,13 @@
} else if (webType === 3) {
curSite = DBSite.flarum;
}
-
-
curSite.pageUrl = ''; // 下一页URL
pageLoading(); // 自动无缝翻页
- // 自动无缝翻页
- function pageLoading() {
- if (curSite.SiteTypeID > 0) {
- windowScroll(function (direction, e) {
- if (direction === 'down') { // 下滑才准备翻页
- let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop,
- scrollHeight = window.innerHeight || document.documentElement.clientHeight,
- scrollDelta = curSite.pager.scrollDelta;
- if (curSite.pager.type === 3) { // 翻页类型 3
- let scrollElement = document.querySelector(curSite.pager.scrollElement);
- //console.log(scrollElement.offsetTop - (scrollTop + scrollHeight), scrollDelta, curSite.SiteTypeID)
- if (scrollElement.offsetTop - (scrollTop + scrollHeight) <= scrollDelta) {
- if (curSite.SiteTypeID === SiteType.GAMERSKY_GL) curSite.pager.scrollDelta -= 800 // 游民星空 gl 的比较奇葩,需要特殊处理下
- ShowPager.loadMorePage();
- }
- } else {
- if (document.documentElement.scrollHeight <= scrollHeight + scrollTop + scrollDelta) {
- if (curSite.pager.type === 2) { // 翻页类型 2
- if (curSite.SiteTypeID > 0) { // 如果指定了间隔时间,那么就依靠这个判断时间到了没有~
- let autopbn = document.querySelector(curSite.pager.nextLink);
- if (autopbn) { // 寻找下一页链接
- if (!curSite.pager.nextText) { // 如果没有指定 nextText 就直接点击
- autopbn.click();
- } else if (autopbn.textContent.indexOf(curSite.pager.nextText) > -1){ // 如果指定了 nextText 就需要判断后再点击(避免已经在加载了,还重复点击)
- autopbn.click();
- }
- // 对于没有按钮文字变化的按钮,可以手动指定间隔时间
- if (curSite.pager.intervals) {
- let _SiteTypeID = curSite.SiteTypeID;
- curSite.SiteTypeID = 0;
- setTimeout(function(){curSite.SiteTypeID = _SiteTypeID;}, curSite.pager.intervals)
- }
- }
- }
- } else if (curSite.pager.type === 1) { // 翻页类型 1
- ShowPager.loadMorePage();
- } else if (curSite.pager.type === 4) { // 翻页类型 4
- if (curSite.SiteTypeID > 0) {
- curSite.pager.functionNext();
- if (curSite.pager.intervals) {
- let _SiteTypeID = curSite.SiteTypeID;
- curSite.SiteTypeID = 0;
- setTimeout(function(){curSite.SiteTypeID = _SiteTypeID;}, curSite.pager.intervals)
- }
- }
- }
- }
- }
- }
- });
- }
- }
-
-
- /*function getElementToPageTop(el) {
- if(el.parentElement) {
- return getElementToPageTop(el.parentElement) + el.offsetTop
- }
- return el.offsetTop
- }*/
-
-
// 隐藏帖子内的 [下一页] 按钮(Discuz! 论坛)
function hidePgbtn() {
- let style_hidePgbtn = document.createElement('style');
- style_hidePgbtn.innerHTML = `.pgbtn {display: none;}`;
- document.head.appendChild(style_hidePgbtn);
+ document.lastChild.appendChild(document.createElement('style')).textContent = '.pgbtn {display: none;}';
}
@@ -891,6 +825,68 @@
}
+ // 自动无缝翻页
+ function pageLoading() {
+ if (curSite.SiteTypeID > 0) {
+ windowScroll(function (direction, e) {
+ if (direction === 'down') { // 下滑才准备翻页
+ let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop,
+ scrollHeight = window.innerHeight || document.documentElement.clientHeight,
+ scrollDelta = curSite.pager.scrollDelta;
+ if (curSite.pager.type === 3) { // 翻页类型 3
+ let scrollElement = document.querySelector(curSite.pager.scrollElement);
+ //console.log(scrollElement.offsetTop - (scrollTop + scrollHeight), scrollDelta, curSite.SiteTypeID)
+ if (scrollElement.offsetTop - (scrollTop + scrollHeight) <= scrollDelta) {
+ if (curSite.SiteTypeID === SiteType.GAMERSKY_GL) curSite.pager.scrollDelta -= 800 // 游民星空 gl 的比较奇葩,需要特殊处理下
+ ShowPager.loadMorePage();
+ }
+ } else {
+ if (document.documentElement.scrollHeight <= scrollHeight + scrollTop + scrollDelta) {
+ if (curSite.pager.type === 2) { // 翻页类型 2
+ if (curSite.SiteTypeID > 0) { // 如果指定了间隔时间,那么就依靠这个判断时间到了没有~
+ let autopbn = document.querySelector(curSite.pager.nextLink);
+ if (autopbn) { // 寻找下一页链接
+ if (!curSite.pager.nextText) { // 如果没有指定 nextText 就直接点击
+ autopbn.click();
+ } else if (autopbn.textContent.indexOf(curSite.pager.nextText) > -1){ // 如果指定了 nextText 就需要判断后再点击(避免已经在加载了,还重复点击)
+ autopbn.click();
+ }
+ // 对于没有按钮文字变化的按钮,可以手动指定间隔时间
+ if (curSite.pager.intervals) {
+ let _SiteTypeID = curSite.SiteTypeID;
+ curSite.SiteTypeID = 0;
+ setTimeout(function(){curSite.SiteTypeID = _SiteTypeID;}, curSite.pager.intervals)
+ }
+ }
+ }
+ } else if (curSite.pager.type === 1) { // 翻页类型 1
+ ShowPager.loadMorePage();
+ } else if (curSite.pager.type === 4) { // 翻页类型 4
+ if (curSite.SiteTypeID > 0) {
+ curSite.pager.functionNext();
+ if (curSite.pager.intervals) {
+ let _SiteTypeID = curSite.SiteTypeID;
+ curSite.SiteTypeID = 0;
+ setTimeout(function(){curSite.SiteTypeID = _SiteTypeID;}, curSite.pager.intervals)
+ }
+ }
+ }
+ }
+ }
+ }
+ });
+ }
+ }
+
+
+ /*function getElementToPageTop(el) {
+ if(el.parentElement) {
+ return getElementToPageTop(el.parentElement) + el.offsetTop
+ }
+ return el.offsetTop
+ }*/
+
+
// 启用/禁用 (当前网站)
function menu_disable(type) {
switch(type) {
@@ -1014,10 +1010,7 @@
if(e == null) return '';
'string' != typeof e && (e = e.getAttribute('href'));
var t = this.getFullHref.a;
- if (t) {return t}
- ((this.getFullHref.a = t = document.createElement('a')), t.href = e, t.href)
- if (t.href) {return t.href}
- //return t || ((this.getFullHref.a = t = document.createElement('a')), t.href = e, t.href);
+ return t || (this.getFullHref.a = t = document.createElement('a')), (t.href = e), t.href;
},
createDocumentByString: function (e) {
if (e) {
diff --git a/Hostloc-Enhanced.user.js b/Hostloc-Enhanced.user.js
index 8718798a0..7d6d361a2 100644
--- a/Hostloc-Enhanced.user.js
+++ b/Hostloc-Enhanced.user.js
@@ -446,37 +446,6 @@
}*/
- // 自动翻页
- function pageLoading() {
- if (!menu_value('menu_pageLoading')) return
- if (curSite.SiteTypeID > 0){
- windowScroll(function (direction, e) {
- if (direction === "down") { // 下滑才准备翻页
- let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
- if (document.documentElement.scrollHeight <= document.documentElement.clientHeight + scrollTop + 999) {
- if (curSite.SiteTypeID === SiteType.FORUM) { // 如果是各版块帖子列表则直接点下一页就行了
- let autopbn = document.querySelector('#autopbn');
- if (autopbn && autopbn.innerText === "下一页 »"){ // 如果已经在加载中了,就忽略
- autopbn.click();
- let timer = setInterval(function(){ // 在下一页加载完成后
- if (document.querySelector('#autopbn').innerText === "下一页 »") {
- if (menu_value('menu_delate255')) delate255(); // 隐藏 255 权限帖子
- if (menu_value('menu_blockUsers')) blockUsers('forum'); // 屏蔽用户(黑名单)
- if (menu_value('menu_blockKeywords')) blockKeywords(); // 屏蔽关键词(帖子标题)
- clearInterval(timer);
- }
- }, 10);
- }
- }else{
- ShowPager.loadMorePage();
- }
- }
- }
- });
- }
- }
-
-
// 自动显示帖子内被隐藏的回复
function showPosts() {
if(menu_value('menu_showhide')){
@@ -550,58 +519,81 @@
}
+ // 自动翻页
+ function pageLoading() {
+ if (!menu_value('menu_pageLoading')) return
+ if (curSite.SiteTypeID > 0){
+ windowScroll(function (direction, e) {
+ if (direction === "down") { // 下滑才准备翻页
+ let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
+ if (document.documentElement.scrollHeight <= document.documentElement.clientHeight + scrollTop + 999) {
+ if (curSite.SiteTypeID === SiteType.FORUM) { // 如果是各版块帖子列表则直接点下一页就行了
+ let autopbn = document.querySelector('#autopbn');
+ if (autopbn && autopbn.innerText === "下一页 »"){ // 如果已经在加载中了,就忽略
+ autopbn.click();
+ let timer = setInterval(function(){ // 在下一页加载完成后
+ if (document.querySelector('#autopbn').innerText === "下一页 »") {
+ if (menu_value('menu_delate255')) delate255(); // 隐藏 255 权限帖子
+ if (menu_value('menu_blockUsers')) blockUsers('forum'); // 屏蔽用户(黑名单)
+ if (menu_value('menu_blockKeywords')) blockKeywords(); // 屏蔽关键词(帖子标题)
+ clearInterval(timer);
+ }
+ }, 10);
+ }
+ }else{
+ ShowPager.loadMorePage();
+ }
+ }
+ }
+ });
+ }
+ }
+
+
// 滚动条事件
function windowScroll(fn1) {
var beforeScrollTop = document.documentElement.scrollTop,
fn = fn1 || function () {};
setTimeout(function () { // 延时执行,避免刚载入到页面就触发翻页事件
- window.addEventListener("scroll", function (e) {
+ window.addEventListener('scroll', function (e) {
var afterScrollTop = document.documentElement.scrollTop,
delta = afterScrollTop - beforeScrollTop;
if (delta == 0) return false;
- fn(delta > 0 ? "down" : "up", e);
+ fn(delta > 0 ? 'down' : 'up', e);
beforeScrollTop = afterScrollTop;
}, false);
}, 1000)
}
- var ShowPager = { // 修改自 https://greasyfork.org/scripts/14178
+ // 修改自 https://greasyfork.org/scripts/14178 , https://github.com/machsix/Super-preloader
+ var ShowPager = {
getFullHref: function (e) {
if(e == null) return '';
- "string" != typeof e && (e = e.getAttribute("href"));
+ 'string' != typeof e && (e = e.getAttribute('href'));
var t = this.getFullHref.a;
- return t || (this.getFullHref.a = t = document.createElement("a")), t.href = e, t.href;
+ return t || (this.getFullHref.a = t = document.createElement('a')), (t.href = e), t.href;
},
createDocumentByString: function (e) {
if (e) {
- if ("HTML" !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, "application/xhtml+xml");
+ if ('HTML' !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, 'application/xhtml+xml');
var t;
- try {
- t = (new DOMParser).parseFromString(e, "text/html");
- } catch (e) {
- }
+ try { t = (new DOMParser).parseFromString(e, 'text/html');} catch (e) {}
if (t) return t;
- if (document.implementation.createHTMLDocument) t = document.implementation.createHTMLDocument("ADocument"); else try {
- (t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)),
- t.documentElement.appendChild(t.createElement("head")), t.documentElement.appendChild(t.createElement("body"));
- } catch (e) {
+ if (document.implementation.createHTMLDocument) {
+ t = document.implementation.createHTMLDocument('ADocument');
+ } else {
+ try {((t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)), t.documentElement.appendChild(t.createElement('head')), t.documentElement.appendChild(t.createElement('body')));} catch (e) {}
}
if (t) {
- var r = document.createRange();
+ var r = document.createRange(),
+ n = r.createContextualFragment(e);
r.selectNodeContents(document.body);
- var n = r.createContextualFragment(e);
t.body.appendChild(n);
- for (var a, o = {
- TITLE: !0,
- META: !0,
- LINK: !0,
- STYLE: !0,
- BASE: !0
- }, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
+ for (var a, o = { TITLE: !0, META: !0, LINK: !0, STYLE: !0, BASE: !0}, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
return t;
}
- } else console.error("没有找到要转成DOM的字符串");
+ } else console.error('没有找到要转成 DOM 的字符串');
},
loadMorePage: function () {
if (curSite.pager) {
@@ -657,46 +649,54 @@
}
},
};
-
-
- function getElementByXpath(e, t, r) {
- r = r || document, t = t || r;
+ function getElementByCSS(css, contextNode = document) {
+ return contextNode.querySelector(css);
+ }
+ function getAllElementsByCSS(css, contextNode = document) {
+ return [].slice.call(contextNode.querySelectorAll(css));
+ }
+ function getElementByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
try {
- return r.evaluate(e, t, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
- } catch (t) {
- return void console.error("无效的xpath");
+ const result = doc.evaluate(xpath, contextNode, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
+ // 应该总是返回一个元素节点
+ return result.singleNodeValue && result.singleNodeValue.nodeType === 1 && result.singleNodeValue;
+ } catch (err) {
+ throw new Error(`Invalid xpath: ${xpath}`);
}
}
-
-
- function getAllElements(e, t, r, n, o) {
- let getAllElementsByXpath = function(e, t, r) {
- return r = r || document, t = t || r, r.evaluate(e, t, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
- }
-
- var i, s = [];
- if (!e) return s;
- if (r = r || document, n = n || window, o = o || void 0, t = t || r, "string" == typeof e) i = 0 === e.search(/^css;/i) ? function getAllElementsByCSS(e, t) {
- return (t || document).querySelectorAll(e);
- }(e.slice(4), t) : getAllElementsByXpath(e, t, r); else {
- if (!(i = e(r, n, o))) return s;
- if (i.nodeType) return s[0] = i, s;
- }
- return function makeArray(e) {
- var t, r, n, o = [];
- if (e.pop) {
- for (t = 0, r = e.length; t < r; t++) (n = e[t]) && (n.nodeType ? o.push(n) : o = o.concat(makeArray(n)));
- return a()(o);
+ function getAllElementsByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
+ const result = [];
+ try {
+ const query = doc.evaluate(xpath, contextNode, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
+ for (let i = 0; i < query.snapshotLength; i++) {
+ const node = query.snapshotItem(i);
+ // 如果是 Element 节点
+ if (node.nodeType === 1) result.push(node);
}
- if (e.item) {
- for (t = e.length; t;) o[--t] = e[t];
- return o;
+ } catch (err) {
+ throw new Error(`无效 Xpath: ${xpath}`);
+ }
+ return result;
+ }
+ function getAllElements(selector, contextNode = undefined, doc = document, win = window, _cplink = undefined) {
+ if (!selector) return [];
+ contextNode = contextNode || doc;
+ if (typeof selector === 'string') {
+ if (selector.search(/^css;/i) === 0) {
+ return getAllElementsByCSS(selector.slice(4), contextNode);
+ } else {
+ return getAllElementsByXpath(selector, contextNode, doc);
}
- if (e.iterateNext) {
- for (t = e.snapshotLength; t;) o[--t] = e.snapshotItem(t);
- return o;
+ } else {
+ const query = selector(doc, win, _cplink);
+ if (!Array.isArray(query)) {
+ throw new Error('getAllElements 返回错误类型');
+ } else {
+ return query;
}
- }(i);
+ }
}
diff --git a/V2ex-Enhanced.user.js b/V2ex-Enhanced.user.js
index 2990d69b5..77698ece1 100644
--- a/V2ex-Enhanced.user.js
+++ b/V2ex-Enhanced.user.js
@@ -89,7 +89,7 @@
pageElement: 'css;.cell.item',
HT_insert: ['//div[@id="Main"]//div[@class="box"]//div[@class="cell"][last()]', 1],
replaceE: 'css;#Main > .box > .cell[style]:not(.item) > table',
- scrollDelta: 1000
+ scrollDelta: 1500
},
function: {
after: linksBlank,
@@ -104,7 +104,7 @@
pageElement: 'css;#notifications > div',
HT_insert: ['css;#notifications', 3],
replaceE: 'css;#Main > .box > .cell[style] > table',
- scrollDelta: 1000
+ scrollDelta: 1500
},
function: {
after: linksBlank,
@@ -119,7 +119,7 @@
pageElement: '//div[@id="Main"]//div[@class="box"]//div[@class="dock_area"] | //*[@id="Main"]//div[@class="box"]//div[@class="inner"] | //*[@id="Main"]//div[@class="box"]//div[@class="dock_area"][last()]/following-sibling::div[@class="cell"][1]',
HT_insert: ['//div[@id="Main"]//div[@class="box"]//div[@class="cell"][last()]', 1],
replaceE: 'css;#Main > .box > .cell[style] > table',
- scrollDelta: 1000
+ scrollDelta: 1500
},
function: {
after: linksBlank,
@@ -134,7 +134,7 @@
pageElement: 'css;#TopicsNode > div',
HT_insert: ['css;#TopicsNode', 3],
replaceE: 'css;#Main > .box > .cell[style] > table',
- scrollDelta: 1000
+ scrollDelta: 1500
},
function: {
after: linksBlank,
@@ -149,7 +149,7 @@
pageElement: 'css;.cell[id^="r_"]',
HT_insert: ['//div[starts-with(@id, "r_")][last()]/following-sibling::div[@class="cell"][1]', 1],
replaceE: 'css;#Main > .box > .cell[style] > table',
- scrollDelta: 1000
+ scrollDelta: 1500
}
},
reply_positive: { // 帖子内容页(正序)
@@ -160,7 +160,7 @@
pageElement: 'css;.cell[id^="r_"]',
HT_insert: ['//div[starts-with(@id, "r_")][1]', 1],
replaceE: 'css;#Main > .box > .cell[style] > table',
- scrollDelta: 1000
+ scrollDelta: 1500
}
},
balance: { // 账户余额页
@@ -171,7 +171,7 @@
pageElement: '//div[@id="Main"]//div[@class="cell"][last()]/preceding-sibling::div[1]//tr[position()>1]',
HT_insert: ['//div[@id="Main"]//div[@class="cell"][last()]/preceding-sibling::div[1]//tr[last()]', 4],
replaceE: 'css;#Main > .box > .cell[style] > table',
- scrollDelta: 700
+ scrollDelta: 1000
}
}
};
@@ -366,7 +366,7 @@
function pageLoading() {
if (curSite.SiteTypeID > 0){
windowScroll(function (direction, e) {
- if (direction === "down") { // 下滑才准备翻页
+ if (direction === 'down') { // 下滑才准备翻页
let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
//console.log(document.documentElement.scrollHeight)
let scrollDelta = curSite.pager.scrollDelta;
@@ -391,59 +391,51 @@
var beforeScrollTop = document.documentElement.scrollTop,
fn = fn1 || function () {};
setTimeout(function () { // 延时执行,避免刚载入到页面就触发翻页事件
- window.addEventListener("scroll", function (e) {
+ window.addEventListener('scroll', function (e) {
var afterScrollTop = document.documentElement.scrollTop,
delta = afterScrollTop - beforeScrollTop;
if (delta == 0) return false;
- fn(delta > 0 ? "down" : "up", e);
+ fn(delta > 0 ? 'down' : 'up', e);
beforeScrollTop = afterScrollTop;
}, false);
}, 1000)
}
- var ShowPager = { // 修改自 https://greasyfork.org/scripts/14178
+ // 修改自 https://greasyfork.org/scripts/14178 , https://github.com/machsix/Super-preloader
+ var ShowPager = {
getFullHref: function (e) {
if(e == null) return '';
- "string" != typeof e && (e = e.getAttribute("href"));
+ 'string' != typeof e && (e = e.getAttribute('href'));
var t = this.getFullHref.a;
- return t || (this.getFullHref.a = t = document.createElement("a")), t.href = e, t.href;
+ return t || (this.getFullHref.a = t = document.createElement('a')), (t.href = e), t.href;
},
createDocumentByString: function (e) {
if (e) {
- if ("HTML" !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, "application/xhtml+xml");
+ if ('HTML' !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, 'application/xhtml+xml');
var t;
- try {
- t = (new DOMParser).parseFromString(e, "text/html");
- } catch (e) {
- }
+ try { t = (new DOMParser).parseFromString(e, 'text/html');} catch (e) {}
if (t) return t;
- if (document.implementation.createHTMLDocument) t = document.implementation.createHTMLDocument("ADocument"); else try {
- (t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)),
- t.documentElement.appendChild(t.createElement("head")), t.documentElement.appendChild(t.createElement("body"));
- } catch (e) {
+ if (document.implementation.createHTMLDocument) {
+ t = document.implementation.createHTMLDocument('ADocument');
+ } else {
+ try {((t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)), t.documentElement.appendChild(t.createElement('head')), t.documentElement.appendChild(t.createElement('body')));} catch (e) {}
}
if (t) {
- var r = document.createRange();
+ var r = document.createRange(),
+ n = r.createContextualFragment(e);
r.selectNodeContents(document.body);
- var n = r.createContextualFragment(e);
t.body.appendChild(n);
- for (var a, o = {
- TITLE: !0,
- META: !0,
- LINK: !0,
- STYLE: !0,
- BASE: !0
- }, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
+ for (var a, o = { TITLE: !0, META: !0, LINK: !0, STYLE: !0, BASE: !0}, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
return t;
}
- } else console.error("没有找到要转成DOM的字符串");
+ } else console.error('没有找到要转成 DOM 的字符串');
},
loadMorePage: function () {
if (curSite.pager) {
let curPageEle = getElementByXpath(curSite.pager.nextLink);
var url = this.getFullHref(curPageEle);
- //console.log(`${url} ${curPageEle} ${curSite.pageUrl}`);
+ console.log(`${url} ${curPageEle} ${curSite.pageUrl}`);
if(url === '') return;
if(curSite.pageUrl === url) return;// 不会重复加载相同的页面
curSite.pageUrl = url;
@@ -516,45 +508,53 @@
}
},
};
-
-
- function getElementByXpath(e, t, r) {
- r = r || document, t = t || r;
+ function getElementByCSS(css, contextNode = document) {
+ return contextNode.querySelector(css);
+ }
+ function getAllElementsByCSS(css, contextNode = document) {
+ return [].slice.call(contextNode.querySelectorAll(css));
+ }
+ function getElementByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
try {
- return r.evaluate(e, t, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
- } catch (t) {
- return void console.error("无效的xpath");
+ const result = doc.evaluate(xpath, contextNode, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
+ // 应该总是返回一个元素节点
+ return result.singleNodeValue && result.singleNodeValue.nodeType === 1 && result.singleNodeValue;
+ } catch (err) {
+ throw new Error(`Invalid xpath: ${xpath}`);
}
}
-
-
- function getAllElements(e, t, r, n, o) {
- let getAllElementsByXpath = function(e, t, r) {
- return r = r || document, t = t || r, r.evaluate(e, t, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
- }
-
- var i, s = [];
- if (!e) return s;
- if (r = r || document, n = n || window, o = o || void 0, t = t || r, "string" == typeof e) i = 0 === e.search(/^css;/i) ? function getAllElementsByCSS(e, t) {
- return (t || document).querySelectorAll(e);
- }(e.slice(4), t) : getAllElementsByXpath(e, t, r); else {
- if (!(i = e(r, n, o))) return s;
- if (i.nodeType) return s[0] = i, s;
- }
- return function makeArray(e) {
- var t, r, n, o = [];
- if (e.pop) {
- for (t = 0, r = e.length; t < r; t++) (n = e[t]) && (n.nodeType ? o.push(n) : o = o.concat(makeArray(n)));
- return a()(o);
+ function getAllElementsByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
+ const result = [];
+ try {
+ const query = doc.evaluate(xpath, contextNode, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
+ for (let i = 0; i < query.snapshotLength; i++) {
+ const node = query.snapshotItem(i);
+ // 如果是 Element 节点
+ if (node.nodeType === 1) result.push(node);
}
- if (e.item) {
- for (t = e.length; t;) o[--t] = e[t];
- return o;
+ } catch (err) {
+ throw new Error(`无效 Xpath: ${xpath}`);
+ }
+ return result;
+ }
+ function getAllElements(selector, contextNode = undefined, doc = document, win = window, _cplink = undefined) {
+ if (!selector) return [];
+ contextNode = contextNode || doc;
+ if (typeof selector === 'string') {
+ if (selector.search(/^css;/i) === 0) {
+ return getAllElementsByCSS(selector.slice(4), contextNode);
+ } else {
+ return getAllElementsByXpath(selector, contextNode, doc);
}
- if (e.iterateNext) {
- for (t = e.snapshotLength; t;) o[--t] = e.snapshotItem(t);
- return o;
+ } else {
+ const query = selector(doc, win, _cplink);
+ if (!Array.isArray(query)) {
+ throw new Error('getAllElements 返回错误类型');
+ } else {
+ return query;
}
- }(i);
+ }
}
})();
\ No newline at end of file
diff --git a/Zhiyoo-Enhanced.user.js b/Zhiyoo-Enhanced.user.js
index ad0f0cae1..7b8e267d3 100644
--- a/Zhiyoo-Enhanced.user.js
+++ b/Zhiyoo-Enhanced.user.js
@@ -248,23 +248,6 @@
}
- // 自动无缝翻页
- function pageLoading() {
- if (!menu_value('menu_pageLoading')) return
- if (curSite.SiteTypeID > 0){
- windowScroll(function (direction, e) {
- if (direction === "down") { // 下滑才准备翻页
- let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
- let scrollDelta = 666;
- if (document.documentElement.scrollHeight <= document.documentElement.clientHeight + scrollTop + scrollDelta) {
- ShowPager.loadMorePage();
- }
- }
- });
- }
- }
-
-
// 回到顶部(右键点击空白处)
function backToTop() {
if (!menu_value('menu_backToTop')) return
@@ -333,58 +316,67 @@
}
+ // 自动无缝翻页
+ function pageLoading() {
+ if (!menu_value('menu_pageLoading')) return
+ if (curSite.SiteTypeID > 0){
+ windowScroll(function (direction, e) {
+ if (direction === 'down') { // 下滑才准备翻页
+ let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
+ let scrollDelta = 666;
+ if (document.documentElement.scrollHeight <= document.documentElement.clientHeight + scrollTop + scrollDelta) {
+ ShowPager.loadMorePage();
+ }
+ }
+ });
+ }
+ }
+
+
// 滚动条事件
function windowScroll(fn1) {
var beforeScrollTop = document.documentElement.scrollTop,
fn = fn1 || function () {};
setTimeout(function () { // 延时执行,避免刚载入到页面就触发翻页事件
- window.addEventListener("scroll", function (e) {
+ window.addEventListener('scroll', function (e) {
var afterScrollTop = document.documentElement.scrollTop,
delta = afterScrollTop - beforeScrollTop;
if (delta == 0) return false;
- fn(delta > 0 ? "down" : "up", e);
+ fn(delta > 0 ? 'down' : 'up', e);
beforeScrollTop = afterScrollTop;
}, false);
}, 1000)
}
- var ShowPager = { // 修改自 https://greasyfork.org/scripts/14178
+ // 修改自 https://greasyfork.org/scripts/14178 , https://github.com/machsix/Super-preloader
+ var ShowPager = {
getFullHref: function (e) {
if(e == null) return '';
- "string" != typeof e && (e = e.getAttribute("href"));
+ 'string' != typeof e && (e = e.getAttribute('href'));
var t = this.getFullHref.a;
- return t || (this.getFullHref.a = t = document.createElement("a")), t.href = e, t.href;
+ return t || (this.getFullHref.a = t = document.createElement('a')), (t.href = e), t.href;
},
createDocumentByString: function (e) {
if (e) {
- if ("HTML" !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, "application/xhtml+xml");
+ if ('HTML' !== document.documentElement.nodeName) return (new DOMParser).parseFromString(e, 'application/xhtml+xml');
var t;
- try {
- t = (new DOMParser).parseFromString(e, "text/html");
- } catch (e) {
- }
+ try { t = (new DOMParser).parseFromString(e, 'text/html');} catch (e) {}
if (t) return t;
- if (document.implementation.createHTMLDocument) t = document.implementation.createHTMLDocument("ADocument"); else try {
- (t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)),
- t.documentElement.appendChild(t.createElement("head")), t.documentElement.appendChild(t.createElement("body"));
- } catch (e) {
+ if (document.implementation.createHTMLDocument) {
+ t = document.implementation.createHTMLDocument('ADocument');
+ } else {
+ try {((t = document.cloneNode(!1)).appendChild(t.importNode(document.documentElement, !1)), t.documentElement.appendChild(t.createElement('head')), t.documentElement.appendChild(t.createElement('body')));} catch (e) {}
}
if (t) {
- var r = document.createRange();
+ var r = document.createRange(),
+ n = r.createContextualFragment(e);
r.selectNodeContents(document.body);
- var n = r.createContextualFragment(e);
t.body.appendChild(n);
- for (var a, o = {
- TITLE: !0,
- META: !0,
- LINK: !0,
- STYLE: !0,
- BASE: !0
- }, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
+ for (var a, o = { TITLE: !0, META: !0, LINK: !0, STYLE: !0, BASE: !0}, i = t.body, s = i.childNodes, c = s.length - 1; c >= 0; c--) o[(a = s[c]).nodeName] && i.removeChild(a);
return t;
}
- } else console.error("没有找到要转成DOM的字符串");
+ } else console.error('没有找到要转成 DOM 的字符串');
},
loadMorePage: function () {
if (curSite.pager) {
@@ -435,57 +427,65 @@
}
},
};
-
-
- function getElementByXpath(e, t, r) {
- r = r || document, t = t || r;
- try {
- return r.evaluate(e, t, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
- } catch (t) {
- return void console.error("无效的xpath");
- }
+ function getElementByCSS(css, contextNode = document) {
+ return contextNode.querySelector(css);
}
-
-
- function getAllElements(e, t, r, n, o) {
- let getAllElementsByXpath = function(e, t, r) {
- return r = r || document, t = t || r, r.evaluate(e, t, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
- }
-
- var i, s = [];
- if (!e) return s;
- if (r = r || document, n = n || window, o = o || void 0, t = t || r, "string" == typeof e) i = 0 === e.search(/^css;/i) ? function getAllElementsByCSS(e, t) {
- return (t || document).querySelectorAll(e);
- }(e.slice(4), t) : getAllElementsByXpath(e, t, r); else {
- if (!(i = e(r, n, o))) return s;
- if (i.nodeType) return s[0] = i, s;
- }
- return function makeArray(e) {
- var t, r, n, o = [];
- if (e.pop) {
- for (t = 0, r = e.length; t < r; t++) (n = e[t]) && (n.nodeType ? o.push(n) : o = o.concat(makeArray(n)));
- return a()(o);
+ function getAllElementsByCSS(css, contextNode = document) {
+ return [].slice.call(contextNode.querySelectorAll(css));
+ }
+ function getElementByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
+ try {
+ const result = doc.evaluate(xpath, contextNode, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
+ // 应该总是返回一个元素节点
+ return result.singleNodeValue && result.singleNodeValue.nodeType === 1 && result.singleNodeValue;
+ } catch (err) {
+ throw new Error(`Invalid xpath: ${xpath}`);
}
- if (e.item) {
- for (t = e.length; t;) o[--t] = e[t];
- return o;
+ }
+ function getAllElementsByXpath(xpath, contextNode, doc = document) {
+ contextNode = contextNode || doc;
+ const result = [];
+ try {
+ const query = doc.evaluate(xpath, contextNode, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
+ for (let i = 0; i < query.snapshotLength; i++) {
+ const node = query.snapshotItem(i);
+ // 如果是 Element 节点
+ if (node.nodeType === 1) result.push(node);
+ }
+ } catch (err) {
+ throw new Error(`无效 Xpath: ${xpath}`);
+ }
+ return result;
+ }
+ function getAllElements(selector, contextNode = undefined, doc = document, win = window, _cplink = undefined) {
+ if (!selector) return [];
+ contextNode = contextNode || doc;
+ if (typeof selector === 'string') {
+ if (selector.search(/^css;/i) === 0) {
+ return getAllElementsByCSS(selector.slice(4), contextNode);
+ } else {
+ return getAllElementsByXpath(selector, contextNode, doc);
+ }
+ } else {
+ const query = selector(doc, win, _cplink);
+ if (!Array.isArray(query)) {
+ throw new Error('getAllElements 返回错误类型');
+ } else {
+ return query;
+ }
}
- if (e.iterateNext) {
- for (t = e.snapshotLength; t;) o[--t] = e.snapshotItem(t);
- return o;
+ }
+
+
+ // 获取GET参数
+ function getQueryVariable(variable) {
+ var query = window.location.search.substring(1);
+ var vars = query.split("&");
+ for (var i=0;i
Date: Sat, 7 Aug 2021 18:21:02 +0800
Subject: [PATCH 0077/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[GreasyFork]=20?=
=?UTF-8?q?=E6=94=AF=E6=8C=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 81 ++++++++++++++++++++++++++++++++++++------------
1 file changed, 61 insertions(+), 20 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index a30342bee..1700eb9f8 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.4.6
+// @version 1.4.7
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、百度、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、APPHOT、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、古风漫画网、RARBG、PubMed、AfreecaTV、AlphaCoders、FitGirl Repacks...
+// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、百度、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、APPHOT、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、古风漫画网、RARBG、PubMed、AfreecaTV、GreasyFork、AlphaCoders、FitGirl Repacks...
// @match *://*/*
// @connect www.gamersky.com
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
@@ -26,9 +26,7 @@
'www.3dmgame.com', 'www.ali213.net', 'gl.ali213.net', 'www.gamersky.com',
'www.423down.com', 'apphot.cc', 'iao.su', 'www.ypojie.com', 'www.appinn.com', 'www.weidown.com', 'www.luochenzhimu.com', 'www.iplaysoft.com', 'www.mpyit.com', 'www.yxssp.com',
'www.gufengmh8.com',
- 'rarbgprx.org',
- 'pubmed.ncbi.nlm.nih.gov',
- 'www.afreecatv.com',
+ 'rarbgprx.org', 'pubmed.ncbi.nlm.nih.gov', 'www.afreecatv.com', 'greasyfork.org',
'art.alphacoders.com', 'wall.alphacoders.com', 'avatars.alphacoders.com', 'mobile.alphacoders.com',
'fitgirl-repacks.site'];
@@ -433,6 +431,18 @@
scrollDelta: 1000
}
},
+ gufengmh8: {
+ SiteTypeID: 0,
+ pager: {
+ type: 4,
+ pageElement: 'css;body > script:first-child',
+ HT_insert: ['css;#images', 3],
+ intervals: 5000,
+ functionNext: gufengmh8_functionNext,
+ functionAdd: gufengmh8_functionAdd,
+ scrollDelta: 2333
+ }
+ },
rarbgprx: {
SiteTypeID: 0,
pager: {
@@ -462,6 +472,39 @@
scrollDelta: 1000
}
},
+ greasyfork: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="next_page"][@href]',
+ pageElement: 'css;ol#browse-script-list > li',
+ HT_insert: ['css;ol#browse-script-list', 3],
+ replaceE: 'css;.pagination',
+ scrollDelta: 1000
+ }
+ },
+ greasyfork_feedback: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="next_page"][@href]',
+ pageElement: 'css;.script-discussion-list > div',
+ HT_insert: ['css;.script-discussion-list', 3],
+ replaceE: 'css;.pagination',
+ scrollDelta: 1500
+ }
+ },
+ greasyfork_discussions: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="next_page"][@href]',
+ pageElement: 'css;.discussion-list > div',
+ HT_insert: ['css;.discussion-list', 3],
+ replaceE: 'css;.pagination',
+ scrollDelta: 1000
+ }
+ },
alphacoders_art: {
SiteTypeID: 0,
pager: {
@@ -497,18 +540,6 @@
replaceE: 'css;nav.navigation.paging-navigation',
scrollDelta: 2000
}
- },
- gufengmh8: {
- SiteTypeID: 0,
- pager: {
- type: 4,
- pageElement: 'css;body > script:first-child',
- HT_insert: ['css;#images', 3],
- intervals: 5000,
- functionNext: gufengmh8_functionNext,
- functionAdd: gufengmh8_functionAdd,
- scrollDelta: 2333
- }
}
};
// 生成 SiteTypeID
@@ -534,9 +565,9 @@
if (location.pathname === '/s') curSite = DBSite.baidu;
break;
case 'movie.douban.com': // < 豆瓣评论 >
- if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/comments') > -1) { // 短评
+ if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/comments') > -1) { // 短评列表
curSite = DBSite.douban_subject_comments;
- } else if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/reviews') > -1) { // 影评
+ } else if (location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/reviews') > -1) { // 影评列表
curSite = DBSite.douban_subject_reviews;
} else if(location.pathname.indexOf('/subject') > -1 && location.pathname.indexOf('/episode') > -1) { // 电视剧每集评论
curSite = DBSite.douban_subject_episode;
@@ -616,6 +647,15 @@
case 'www.afreecatv.com': // < 直播网站 >
curSite = DBSite.afreecatv;
break;
+ case 'greasyfork.org': // < GreasyFork >
+ if (location.pathname.indexOf('/scripts') + 8 === location.pathname.length) {
+ curSite = DBSite.greasyfork;
+ } else if (location.pathname.lastIndexOf('/feedback') + 9 === location.pathname.length) {
+ curSite = DBSite.greasyfork_feedback;
+ } else if (location.pathname.lastIndexOf('/discussions') + 12 === location.pathname.length) {
+ curSite = DBSite.greasyfork_discussions;
+ }
+ break;
case 'art.alphacoders.com': // < 壁纸网站 >
curSite = DBSite.alphacoders_art;
setTimeout(alphacoders_art_beforeFunction_0, 1000);
@@ -1049,10 +1089,11 @@
timeout: 5000,
onload: function (response) {
try {
- //console.log('最终 URL:' + response.finalUrl, '返回内容:' + response.responseText)
+ console.log('最终 URL:' + response.finalUrl, '返回内容:' + newBody)
var newBody = ShowPager.createDocumentByString(response.responseText);
let pageElems = getAllElements(curSite.pager.pageElement, newBody, newBody),
toElement = getAllElements(curSite.pager.HT_insert[0])[0];
+ //console.log(curSite.pager.pageElement, pageElems)
if (pageElems.length >= 0) {
// 如果有插入前函数就执行函数
From 74593211216ab2c9c6a7c246a59ed251e09b5f5a Mon Sep 17 00:00:00 2001
From: xiu2 <54703944+XIU2@users.noreply.github.com>
Date: Sat, 7 Aug 2021 23:41:59 +0800
Subject: [PATCH 0078/2070] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20[Steam=20?=
=?UTF-8?q?=E5=88=9B=E6=84=8F=E5=B7=A5=E5=9D=8A]=20=E6=94=AF=E6=8C=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Autopage.user.js | 41 +++++++++++++++++++++++++++++++++--------
1 file changed, 33 insertions(+), 8 deletions(-)
diff --git a/Autopage.user.js b/Autopage.user.js
index 1700eb9f8..ee2265b03 100644
--- a/Autopage.user.js
+++ b/Autopage.user.js
@@ -1,8 +1,8 @@
// ==UserScript==
// @name 自动无缝翻页
-// @version 1.4.7
+// @version 1.4.8
// @author X.I.U
-// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、百度、豆瓣、微博、千图网、3DM、游侠网、游民星空、423Down、APPHOT、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、古风漫画网、RARBG、PubMed、AfreecaTV、GreasyFork、AlphaCoders、FitGirl Repacks...
+// @description 自动无缝翻页,目前支持:所有「Discuz!、Flarum」论坛、百度、豆瓣、微博、千图网、3DM、游侠网、游民星空、Steam 创意工坊、423Down、APPHOT、不死鸟、亿破姐、小众软件、微当下载、落尘之木、异次元软件、老殁殁漂遥、异星软件空间、古风漫画网、RARBG、PubMed、AfreecaTV、GreasyFork、AlphaCoders、FitGirl Repacks...
// @match *://*/*
// @connect www.gamersky.com
// @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png
@@ -23,7 +23,7 @@
var webType, curSite = {SiteTypeID: 0};
// 目前支持的网站
const websiteList = ['www.baidu.com', 'movie.douban.com', 'weibo.com', 'www.58pic.com',
- 'www.3dmgame.com', 'www.ali213.net', 'gl.ali213.net', 'www.gamersky.com',
+ 'www.3dmgame.com', 'www.ali213.net', 'gl.ali213.net', 'www.gamersky.com', 'steamcommunity.com',
'www.423down.com', 'apphot.cc', 'iao.su', 'www.ypojie.com', 'www.appinn.com', 'www.weidown.com', 'www.luochenzhimu.com', 'www.iplaysoft.com', 'www.mpyit.com', 'www.yxssp.com',
'www.gufengmh8.com',
'rarbgprx.org', 'pubmed.ncbi.nlm.nih.gov', 'www.afreecatv.com', 'greasyfork.org',
@@ -306,6 +306,17 @@
before: gamersky_gl_beforeFunction
}
},
+ steamcommunity: {
+ SiteTypeID: 0,
+ pager: {
+ type: 1,
+ nextLink: '//a[@class="pagebtn"][last()][@href]',
+ pageElement: 'css;.workshopBrowseItems > *',
+ HT_insert: ['css;.workshopBrowseItems', 3],
+ replaceE: 'css;.workshopBrowsePaging',
+ scrollDelta: 1000
+ }
+ },
_423down: {
SiteTypeID: 0,
pager: {
@@ -547,7 +558,8 @@
// 用于脚本判断(针对部分特殊的网站)
const SiteType = {
- GAMERSKY_GL: DBSite.gamersky_gl.SiteTypeID
+ GAMERSKY_GL: DBSite.gamersky_gl.SiteTypeID,
+ STEAMCOMMUNITY: DBSite.steamcommunity.SiteTypeID
};
@@ -600,6 +612,9 @@
curSite = DBSite.gamersky_gl;
}
break;
+ case 'steamcommunity.com': // < Steam 创意工坊 >
+ curSite = DBSite.steamcommunity;
+ break;
case 'www.423down.com': // < 423down >
if (location.pathname.indexOf('.html') === -1) curSite = DBSite._423down;
break;
@@ -1089,7 +1104,7 @@
timeout: 5000,
onload: function (response) {
try {
- console.log('最终 URL:' + response.finalUrl, '返回内容:' + newBody)
+ //console.log('最终 URL:' + response.finalUrl, '返回内容:' + response.responseText)
var newBody = ShowPager.createDocumentByString(response.responseText);
let pageElems = getAllElements(curSite.pager.pageElement, newBody, newBody),
toElement = getAllElements(curSite.pager.HT_insert[0])[0];
@@ -1108,9 +1123,19 @@
// 插入位置
let addTo1 = addTo(curSite.pager.HT_insert[1]);
// 插入新页面元素
- pageElems.forEach(function (one) {
- toElement.insertAdjacentElement(addTo1, one);
- });
+ if (curSite.SiteTypeID === SiteType.STEAMCOMMUNITY) {
+ pageElems.forEach(function (one) {
+ if (one.tagName === 'SCRIPT') { // 对于