🏠 Home 

Greasy fork脚本页面适用于网址增强

脚本详情页适用于网址不默认跳转搜索 转为可点击的文本链接并弹出提示


Installer dette script?
Skaberens foreslåede script

Du vil måske også kunne lide Greasyfork Lim håndværker


Installer dette script
  1. // ==UserScript==
  2. // @name Greasy fork脚本页面适用于网址增强
  3. // @name:zh-CN Greasy fork脚本页面适用于网址增强
  4. // @namespace https://github.com/#####GodMan/UserScripts
  5. // @version 0.9.3.66
  6. // @description 脚本详情页适用于网址不默认跳转搜索 转为可点击的文本链接并弹出提示
  7. // @description:zh-CN 脚本详情页适用于网址不默认跳转搜索 转为可点击的文本链接并弹出提示
  8. // @author 人民的勤务员 <china.qinwuyuan@gmail.com>
  9. // @match https://*.greasyfork.org/zh-CN/scripts/*
  10. // @match https://*.sleazyfork.org/zh-CN/scripts/*
  11. // @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3gYRBAceMUIR3QAAEg9JREFUeNrtXWlwVNW2/k4n3RkbM5FRMEHUBOIAekGMJV4lYVDBAeQ+IYTJODAVjwBXfRZFQRn04vthiQgGEOMDiylY4lB6g1CG8VFJLF4SSYiBRBDTSZM06aQzdH/vB+ccex5Id9IBV9WuJDvnnL3P+s7+9tprr723gBsUkkoAEAShG96VQABqAOHiz+EARog/7wAwGECkmMLEe/QAropJA+AigPMAKsWfbQCuianH7B2iAOgFQehEP4kA/xClqOQHANwL4B4AdwEYCiCkl8/uAFAPoAbAOQBnAZQDqALQhVtcEgAsB3AcwG/il0ofpzaxrONi2Qm3ksIFAFEAxgHYDqDVE+VJEhISwoKCAra0tFCj0TA/P9/uddb363Q6/vTTT/Lfw4YNo0KhaBXrMk6sm3CzKj8JwKsAvlGpVO2zZ8/mkSNHePnyZRoMBrsKcwTAnj17aC2LFi1yCYB1/vnz57ljxw7p73YA34h1TLqZFB8MIDcwMLBi6NChHUuXLuXFixdpT9wF4MyZMxw5ciQHDRrEjz/+mCR5+vRpjwGw/jszM5NRUVEdACoA5Ip1H7ASC+A5AP/rLf6WZMyYMXJeQkICSfLatWu9BqCjo4Pfffed+T0lAB4xs7YGjEwRrQ2jNztQSVQqlUeKdfc6B/e1ANgEIG0gKD4QwGYA3QCoUCgoCAIFQWBqaip//fVXOhN3AfBUsQCoUqluFACK73MBwGwACn+mnN0ATEqlki+//DIrKyu5detWJiUlyS###XuWJpPJpwA0NjaSJBMTE+W8sWPH9gYAKRkA/Et8V7+SvwE4JFFOQkICT58+TZLs7u7mgQMHOGTIEK9RkKv8Y8eOkSQ3b95MtVrNESNG8MyZM94AgOJI+pD4zn5h108BUG1eyYiICBYVFckv1N3dzeLiYkZGRvYJAPPmzbNpXXv37vUYABeAVIvv3m/jhgAATwO4bK+Co0aNYnl5uYUSiouLOWTIEAqC4FMAADA/P58ajYatra389NNPGRoa6pHCIyMjSZLV1dXO6nRZ1EFAXytfBWCp6NxyWMFRo0bx2LFjMudLdHT77bf72t3Q67R48WLq9Xred999rq5tFscMqr788v9TdGS5fJHU1FSZk83pKCIiwq8BKC0t5bx589y9XiuCENAXnP+s6GFkUFAQU1JSmJiYSEGhcNoSvE1HfpiaRTryaZ8wBcAfUqFz5sxhXV0dy8vL+cL06QwIDHQKQklJiQ0decM68qN0WdSRz0zNGvMCd+3aJX/Rly5d4vQZM5y2hIFKRx6mal+YqLEAvrYubMqUKfKghyTr6+s5ITPzLzq6Pk7w2mBNIY7+bPw6QUFBzM3NpUajsQBhuht0ZM86uonoqEfUmVfcFh8BMDkqLCgoiNnZ2ezo6PiLj###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####zMoKOiGNmyCuM3WJnHbLZd7IdjLNxqN/d4JSyIpXEpqtdordCRNvD/wwAPyNjqdnZ1sa2vj+PHje1xuWWanEzaXNHHjOTli2dMX91cAIiIiWFtby/Hjx/eKjo4fP87Q0FAGBATwzTffJEn29PTwrbfekjbtc370iZUZak9mAzA0NDT4BQBSRLXCamDkKN8RBU2bNo0k+dVXX/V6sGY9rSpuSeDetpUuWgAgbtz62muvGf0BAGmjj6ysLIvIM0f51p1wWFgYx48fzwsXLpAkN2zYYHeO2RM6KikpYXBwMAHwhRde4F133eXVjVulLSwPbdq0qd8BsLclmLN8Z+ZzfX29fKpHb+KOKisrZctKnAP36tbFkvwtKirqfH8DkJCQwL1791os8HCWL0loaCg/+eQTNjc389q1aywqKmJycrLDPZE8oaOjR4/KYYiCIPhk825JpsDBkSX+mnrjgXWHjoxGo/lBD13w4fb1kq/oaVw/rOCmB0BaXLJp0ya7iwtNJhO3bdsm8b8JwH+hDw71CRCH1dpbAQAADAsLY15eHqurq9nY2MimpibW1tYyPz9fMm9NAApxA+fI3ChaKgBzAeS72gWwv+W67gFB6P2HmZiYiLvvvhtKpRIXLlxAXV0denp6COB/ALwmRjv0mTg9xuoWSUYAa9GHJyjZa0E2B7ndIukygH/ATw6Alo4y7LkFFO9XRxlaD9b+hesnR9ysyvfbwzzN3RazRSdU901kJQ2I42zNJVV0w7YMRAACAgI4c+ZMPv/880xKStIFBAR8hAFyoLP1fMIj1jNr/g5AXFwc33nnHaakpEgzWQPySHPr6c1ccVK63R8BMJlM8hLZMWPGGAIDAyvFOgfjJpIkAK8mJSX9OyMjw6BUKrlx40ZqNBrqdDoeOHCAd9xxh4VyZs2axR9//JFXr151GHkgiauTMKQIhWvXrlGj0fCjjz5iSEgIy8rKpMiOdqVS+a0YOpKEm1QEceQ8DsD2sLAw3YIFC1hSUkKtVsuamhrZPWxvsZ515AHcPAlDilAwGo1sa2tjY2Mjd+3axbS0NAYGBraK4YLjxLoJuIUkAcByQRCOp6WlXVm4cKFh6tSpnDhxIquqqlhVVcXp06czOjqawcHBNpEHcHFyxalTp+Rls/v27eOKFSsYExOjFwThN1wPEV8OJ4Gyt5IocX3BQk5QUNB/x8bGfpeenv6rWq226TOSkpJ44cIFedOPzs5OajQai4OXBw0axGXLlnHChAkE0J6cnHw+Ojr6W1xfFpQjlqXyF0pwKUajMUAQBMV1n5Zg4ehSKBRd4u8q0enVZcchppKudXXdli1bAvfs2aP+448/wvV6fbhOp7uzq6srzWg03knyDpIxJCMBRHR1dYWpVCoA0Hd1dV0FcBWABsDF8PDwOpVKVaXVan8ZOXJkZ1xcXNvhw4ebxZGsRZlSfUwmk0oQBLS3t3eLwVTuOPvsvo+z9zSX/wfl+jWwZp8+ogAAAABJRU5ErkJggg==
  12. // @iconbak https://greasyfork.org/vite/assets/blacklogo96-CxYTSM_T.png
  13. // @license MIT
  14. // @grant GM_getValue
  15. // @grant GM_setValue
  16. // @supportURL https://github.com/#####GodMan/UserScripts/issues
  17. // @homepageURL https://github.com/#####GodMan/UserScripts
  18. // ==/UserScript==
  19. (function () {
  20. 'use strict'
  21. let useWindowOpen = GM_getValue('useWindowOpen', false) // 默认在当前页面跳转
  22. let linkBehavior = GM_getValue('linkBehavior', 0)
  23. let shouldMatchLink = false // 添加一个全局变量,默认为假 不显示适用于脚本的数量
  24. function Toast(msg, duration) {
  25. duration = isNaN(duration) ? 3000 : duration
  26. var m = document.createElement('div')
  27. m.innerHTML = msg
  28. m.style.cssText = 'max-width:60%;min-width: 150px;padding:0 14px;height: 40px;color: black;line-height: 40px;text-align: center;border-radius: 12px;position: fixed;top: 50%;left: 50%;transform: translate(-50%, -50%);z-index: 2147483647;background: white;font-size: 16px;'
  29. document.body.appendChild(m)
  30. setTimeout(function () {
  31. var d = 0.5
  32. m.style.transition = '-webkit-transform ' + d + 's ease-in, opacity ' + d + 's ease-in'
  33. m.style.opacity = '0'; setTimeout(function () { document.body.removeChild(m) }, d * 1000)
  34. }, duration)
  35. }
  36. function navigateTo(url, useWindowOpen) {
  37. if (useWindowOpen) {
  38. window.open(url, '_blank')
  39. } else {
  40. window.location.href = url
  41. }
  42. }
  43. const ddElements = document.querySelectorAll('dd.script-show-applies-to ul.block-list.expandable > li')
  44. ddElements.forEach(dd => {
  45. const link = dd.querySelector('a[title^="查看其他"]')
  46. const text = dd.textContent.trim()
  47. if (shouldMatchLink && link) { // 检查 shouldMatchLink 变量的值
  48. const match = link.title.match(/查看其他 (\d+) 个适用/)
  49. if (match) {
  50. const count = match[1]
  51. const note = document.createElement('sup')
  52. note.textContent = count
  53. link.appendChild(note)
  54. link.title = link.title.replace(/ \d+ /, ' ')
  55. link.addEventListener('click', function (event) {
  56. event.preventDefault()
  57. handleLinkClick(text)
  58. })
  59. }
  60. } else {
  61. const newLink = document.createElement('a')
  62. newLink.textContent = text
  63. newLink.href = '#'
  64. newLink.addEventListener('click', function (event) {
  65. event.preventDefault()
  66. handleLinkClick(text)
  67. })
  68. dd.textContent = ''
  69. dd.appendChild(newLink)
  70. }
  71. })
  72. function handleLinkClick(linkText) {
  73. if (linkBehavior === 0) {
  74. const bodyBackgroundColor = window.getComputedStyle(document.body).backgroundColor
  75. const dialogBox = document.createElement('div')
  76. dialogBox.style.position = 'fixed'
  77. dialogBox.style.top = '50%'
  78. dialogBox.style.left = '50%'
  79. dialogBox.style.transform = 'translate(-50%, -50%)'
  80. dialogBox.style.background = bodyBackgroundColor
  81. dialogBox.style.padding = '20px'
  82. dialogBox.style.boxShadow = '0 4px 6px rgba(0, 0, 0, 0.1)'
  83. dialogBox.style.borderRadius = '8px'
  84. dialogBox.style.zIndex = '9999'
  85. dialogBox.innerHTML = `
  86. <span id="closeBtn" style="position: absolute; top: 10px; right: 10px; color: red; cursor: pointer; font-size: 30px;">&times;</span>
  87. <p style="font-weight: bold; font-size: 20px;"> <span id="linkTextSpan" style="color: red;">${linkText}</span> 操作</p>
  88. <button id="forumSearchBtn">论坛搜索</button>
  89. <button id="openUrlBtn">打开网址</button>
  90. <button id="copyLinkBtn">复制链接</button>
  91. `
  92. document.body.appendChild(dialogBox)
  93. let dialogInitialX, dialogInitialY, initialX, initialY
  94. dialogBox.addEventListener('mousedown', onMouseDown)
  95. dialogBox.addEventListener('touchstart', onTouchStart)
  96. function onMouseDown(event) {
  97. dialogInitialX = dialogBox.offsetLeft
  98. dialogInitialY = dialogBox.offsetTop
  99. initialX = event.clientX
  100. initialY = event.clientY
  101. document.addEventListener('mousemove', onMouseMove)
  102. document.addEventListener('mouseup', onMouseUp)
  103. }
  104. function onTouchStart(event) {
  105. dialogInitialX = dialogBox.offsetLeft
  106. dialogInitialY = dialogBox.offsetTop
  107. initialX = event.touches[0].clientX
  108. initialY = event.touches[0].clientY
  109. document.addEventListener('touchmove', onTouchMove)
  110. document.addEventListener('touchend', onTouchEnd)
  111. }
  112. function onMouseMove(event) {
  113. const deltaX = event.clientX - initialX
  114. const deltaY = event.clientY - initialY
  115. dialogBox.style.left = dialogInitialX + deltaX + 'px'
  116. dialogBox.style.top = dialogInitialY + deltaY + 'px'
  117. }
  118. function onTouchMove(event) {
  119. const deltaX = event.touches[0].clientX - initialX
  120. const deltaY = event.touches[0].clientY - initialY
  121. dialogBox.style.left = dialogInitialX + deltaX + 'px'
  122. dialogBox.style.top = dialogInitialY + deltaY + 'px'
  123. }
  124. function onMouseUp() {
  125. document.removeEventListener('mousemove', onMouseMove)
  126. document.removeEventListener('mouseup', onMouseUp)
  127. }
  128. function onTouchEnd() {
  129. document.removeEventListener('touchmove', onTouchMove)
  130. document.removeEventListener('touchend', onTouchEnd)
  131. }
  132. document.getElementById('linkTextSpan').style.pointerEvents = 'none'
  133. document.getElementById('closeBtn').addEventListener('click', function () {
  134. document.body.removeChild(dialogBox)
  135. })
  136. document.getElementById('copyLinkBtn').addEventListener('click', function () {
  137. const linkText = document.getElementById('linkTextSpan').innerText
  138. const tempTextarea = document.createElement('textarea')
  139. tempTextarea.value = linkText
  140. document.body.appendChild(tempTextarea)
  141. tempTextarea.select()
  142. document.execCommand('copy')
  143. document.body.removeChild(tempTextarea)
  144. document.body.removeChild(dialogBox)
  145. Toast('文本已复制到剪贴板!', 1000)
  146. })
  147. document.getElementById('forumSearchBtn').addEventListener('click', function () {
  148. const newUrl = `https://${location.host}/zh-CN/scripts/by-site/${linkText}`
  149. navigateTo(newUrl, useWindowOpen)
  150. document.body.removeChild(dialogBox)
  151. })
  152. document.getElementById('openUrlBtn').addEventListener('click', function () {
  153. const originalUrl = `https://${linkText.replace(/\d+/g, '')}`
  154. navigateTo(originalUrl, useWindowOpen)
  155. document.body.removeChild(dialogBox)
  156. })
  157. } else if (linkBehavior === 1) {
  158. const originalUrl = `https://${linkText.replace(/\d+/g, '')}`
  159. navigateTo(originalUrl, useWindowOpen)
  160. } else if (linkBehavior === 2) {
  161. const newUrl = `https://${location.host}/zh-CN/scripts/by-site/${linkText}`
  162. navigateTo(newUrl, useWindowOpen)
  163. }
  164. }
  165. const appliesToSection = document.querySelector('dt.script-show-applies-to')
  166. if (appliesToSection) {
  167. const changeConfigText = document.createElement('span')
  168. changeConfigText.textContent = '[适用于] '
  169. changeConfigText.style.fontWeight = 'bold'
  170. const checkboxLabel = document.createElement('label')
  171. checkboxLabel.textContent = '新窗口打开'
  172. checkboxLabel.style.marginLeft = '10px'
  173. const checkboxInput = document.createElement('input')
  174. checkboxInput.type = 'checkbox'
  175. checkboxInput.checked = useWindowOpen
  176. checkboxInput.style.marginRight = '5px'
  177. checkboxInput.addEventListener('change', function () {
  178. useWindowOpen = checkboxInput.checked
  179. GM_setValue('useWindowOpen', useWindowOpen)
  180. })
  181. checkboxLabel.appendChild(checkboxInput)
  182. const selectList = document.createElement('select')
  183. selectList.style.width = '7em'
  184. const options = [
  185. { value: 0, text: '弹出提示' },
  186. { value: 1, text: '打开网址' },
  187. { value: 2, text: '论坛搜索' }
  188. ]
  189. options.forEach(option => {
  190. const optionElement = document.createElement('option')
  191. optionElement.textContent = option.text
  192. optionElement.value = option.value
  193. if (linkBehavior === option.value) {
  194. optionElement.selected = true
  195. }
  196. selectList.appendChild(optionElement)
  197. })
  198. selectList.addEventListener('change', function () {
  199. linkBehavior = parseInt(selectList.value)
  200. GM_setValue('linkBehavior', linkBehavior)
  201. Toast(`点击"适用于"网址已设置为: ${options.find(option => option.value === linkBehavior).text}`, 1000)
  202. })
  203. appliesToSection.parentElement.appendChild(changeConfigText)
  204. appliesToSection.parentElement.appendChild(selectList)
  205. appliesToSection.parentElement.appendChild(checkboxLabel)
  206. }
  207. })();