|
1 | 1 | // ==UserScript== |
2 | 2 | // @name 自动无缝翻页 |
3 | | -// @version 1.1.7 |
| 3 | +// @version 1.1.8 |
4 | 4 | // @author X.I.U |
5 | | -// @description 自动无缝翻页,目前支持:423Down、Apphot、不死鸟、小众软件、异次元软件、AlphaCoders、三国杀论坛、PubMed |
| 5 | +// @description 自动无缝翻页,目前支持:423Down、Apphot、不死鸟、小众软件、异次元软件、AlphaCoders、PubMed、三国杀论坛、百分浏览器论坛 |
6 | 6 | // @match *://www.423down.com/* |
7 | 7 | // @exclude *://www.423down.com/*.html |
8 | 8 | // @match *://apphot.cc/* |
|
12 | 12 | // @match *://www.appinn.com/*/*/ |
13 | 13 | // @match *://www.appinn.com/?s=* |
14 | 14 | // @match *://www.iplaysoft.com/* |
| 15 | +// @match *://www.pixiv.net/tags/*/* |
15 | 16 | // @match *://*.alphacoders.com/* |
16 | 17 | // @match *://club.sanguosha.com/* |
| 18 | +// @match *://www.centbrowser.net/* |
17 | 19 | // @match *://pubmed.ncbi.nlm.nih.gov/?term=* |
18 | 20 | // @icon https://i.loli.net/2021/03/07/rdijeYm83pznxWq.png |
19 | 21 | // @grant GM_xmlhttpRequest |
|
107 | 109 | scrollDelta: 1200 |
108 | 110 | } |
109 | 111 | }, |
110 | | - sanguosha_forum: { |
| 112 | + discuz_forum: { |
111 | 113 | SiteTypeID: 7, |
112 | 114 | pager: { |
113 | 115 | type: 2, |
114 | 116 | nextLink: '#autopbn', |
115 | 117 | nextText: '下一页 »', |
116 | | - scrollDelta: 800 |
| 118 | + scrollDelta: 1000 |
117 | 119 | } |
118 | 120 | }, |
119 | | - sanguosha_thread: { |
| 121 | + discuz_thread: { |
120 | 122 | SiteTypeID: 8, |
121 | 123 | pager: { |
122 | 124 | type: 1, |
123 | 125 | nextLink: '//a[@class="nxt"][@href]', |
124 | 126 | pageElement: 'css;div#postlist > div[id^="post_"]', |
125 | 127 | HT_insert: ['css;div#postlist', 3], |
126 | 128 | replaceE: 'css;div.pg', |
127 | | - scrollDelta: 800 |
| 129 | + scrollDelta: 1000 |
128 | 130 | } |
129 | 131 | }, |
130 | | - sanguosha_search: { |
| 132 | + discuz_search: { |
131 | 133 | SiteTypeID: 9, |
132 | 134 | pager: { |
133 | 135 | type: 1, |
134 | 136 | nextLink: '//a[@class="nxt"][@href]', |
135 | 137 | pageElement: 'css;div#threadlist > ul', |
136 | 138 | HT_insert: ['css;div#threadlist', 3], |
137 | 139 | replaceE: 'css;div.pg', |
138 | | - scrollDelta: 800 |
| 140 | + scrollDelta: 1000 |
139 | 141 | } |
140 | 142 | }, |
141 | 143 | pubmed_postslist: { |
|
157 | 159 | replaceE: '//div[@class="hidden-xs hidden-sm"]/..', |
158 | 160 | scrollDelta: 1000 |
159 | 161 | } |
| 162 | + }, |
| 163 | + pixiv_tags: { |
| 164 | + SiteTypeID: 12, |
| 165 | + pager: { |
| 166 | + type: 1, |
| 167 | + nextLink: '//nav[not(starts-with(@class,"sc-"))]//button/following-sibling::a[1][@href]', |
| 168 | + pageElement: 'css;section > div > ul > li', |
| 169 | + HT_insert: ['css;section > div > ul', 3], |
| 170 | + replaceE: 'css;nav:not([class^="sc-"])', |
| 171 | + scrollDelta: 1000 |
| 172 | + } |
160 | 173 | } |
161 | 174 | }; |
162 | 175 |
|
|
175 | 188 | curSite = DBSite.appinn_postslist; |
176 | 189 | break; |
177 | 190 | case "www.iplaysoft.com": |
178 | | - if(location.pathname.indexOf(".html") > -1 || location.pathname.indexOf("/p/") > -1){ // 文章内 |
| 191 | + if (location.pathname.indexOf(".html") > -1 || location.pathname.indexOf("/p/") > -1) { // 文章内 |
179 | 192 | curSite = DBSite.iplaysoft_postcomments; |
180 | | - }else{ // 其他页面 |
| 193 | + } else { // 其他页面 |
181 | 194 | curSite = DBSite.iplaysoft_postslist; |
182 | 195 | } |
183 | 196 | break; |
| 197 | + case "www.pixiv.net": |
| 198 | + curSite = DBSite.pixiv_tags; |
| 199 | + break; |
184 | 200 | case "wall.alphacoders.com": |
185 | 201 | case "avatars.alphacoders.com": |
186 | 202 | case "mobile.alphacoders.com": |
187 | 203 | curSite = DBSite.wall_alphacoders; |
188 | 204 | break; |
189 | | - case "club.sanguosha.com": |
190 | | - if(location.pathname.indexOf("forum") > -1){ // 各版块帖子列表 |
191 | | - curSite = DBSite.sanguosha_forum; |
192 | | - }else if(location.pathname.indexOf("thread") > -1){ // 帖子内 |
193 | | - curSite = DBSite.sanguosha_thread; |
194 | | - hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮 |
195 | | - }else if(location.pathname.indexOf("search") > -1){ // 搜索结果 |
196 | | - curSite = DBSite.sanguosha_search; |
| 205 | + case "club.sanguosha.com": // Discuz! 论坛专用 |
| 206 | + case "www.centbrowser.net": |
| 207 | + if (location.pathname.indexOf('.html') > -1) { // 判断是不是静态网页(.html 结尾) |
| 208 | + if (location.pathname.indexOf('forum') > -1) { // 各版块帖子列表 |
| 209 | + curSite = DBSite.discuz_forum; |
| 210 | + } else if (location.pathname.indexOf('thread') > -1) { // 帖子内 |
| 211 | + curSite = DBSite.discuz_thread; |
| 212 | + hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮 |
| 213 | + }else if(location.pathname.indexOf('search') > -1) { // 搜索结果 |
| 214 | + curSite = DBSite.discuz_search; |
| 215 | + } |
| 216 | + } else { |
| 217 | + if (location.search.indexOf('mod=forumdisplay') > -1) { // 各版块帖子列表 |
| 218 | + curSite = DBSite.discuz_forum; |
| 219 | + } else if (location.search.indexOf('mod=viewthread') > -1) { // 帖子内 |
| 220 | + curSite = DBSite.discuz_thread; |
| 221 | + hidePgbtn(); // 隐藏帖子内的 [下一页] 按钮 |
| 222 | + } else if (location.pathname.indexOf('search') > -1) { // 搜索结果 |
| 223 | + curSite = DBSite.discuz_search; |
| 224 | + } |
197 | 225 | } |
198 | 226 | break; |
199 | 227 | case "pubmed.ncbi.nlm.nih.gov": |
|
206 | 234 |
|
207 | 235 | // 自动无缝翻页 |
208 | 236 | function pageLoading() { |
209 | | - if (curSite.SiteTypeID > 0){ |
| 237 | + if (curSite.SiteTypeID > 0) { |
210 | 238 | windowScroll(function (direction, e) { |
211 | 239 | if (direction === "down") { // 下滑才准备翻页 |
212 | 240 | let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop; |
213 | 241 | let scrollDelta = curSite.pager.scrollDelta; |
214 | 242 | if (document.documentElement.scrollHeight <= document.documentElement.clientHeight + scrollTop + scrollDelta) { |
215 | 243 | if (curSite.pager.type === 1) { |
216 | 244 | ShowPager.loadMorePage(); |
217 | | - }else{ |
| 245 | + } else { |
218 | 246 | let autopbn = document.querySelector(curSite.pager.nextLink); |
219 | | - if (autopbn){ // 如果正在加载,就不再点击 |
220 | | - if (!curSite.pager.nextText){ // 如果没有指定 nextText 就直接点击 |
| 247 | + if (autopbn) { // 如果正在加载,就不再点击 |
| 248 | + if (!curSite.pager.nextText) { // 如果没有指定 nextText 就直接点击 |
221 | 249 | autopbn.click(); |
222 | | - }else if (autopbn.innerText.indexOf(curSite.pager.nextText) > -1){ // 如果指定了 nextText 就需要判断后再点击(避免已经在加载了,还重复点击) |
| 250 | + } else if (autopbn.innerText.indexOf(curSite.pager.nextText) > -1){ // 如果指定了 nextText 就需要判断后再点击(避免已经在加载了,还重复点击) |
223 | 251 | autopbn.click(); |
224 | 252 | } |
225 | 253 | } |
|
232 | 260 |
|
233 | 261 |
|
234 | 262 | // 隐藏帖子内的 [下一页] 按钮 |
235 | | - function hidePgbtn(){ |
| 263 | + function hidePgbtn() { |
236 | 264 | let style_hidePgbtn = document.createElement('style'); |
237 | 265 | style_hidePgbtn.innerHTML = `.pgbtn {display: none;}`; |
238 | 266 | document.head.appendChild(style_hidePgbtn); |
|
334 | 362 | timeout: 5000, |
335 | 363 | onload: function (response) { |
336 | 364 | try { |
337 | | - //console.log(`${response.responseText}`) |
| 365 | + console.log(`${response.responseText}`) |
338 | 366 | var newBody = ShowPager.createDocumentByString(response.responseText); |
339 | 367 | let pageElems = getAllElements(curSite.pager.pageElement, newBody, newBody); |
340 | 368 | let toElement = getAllElements(curSite.pager.HT_insert[0])[0]; |
|
0 commit comments