Open_Links

自动打开链接列表

  1. // ==UserScript==
  2. // @name Open_Links
  3. // @name:zh-CN 自动打开链接
  4. // @namespace https://blog.chrxw.com
  5. // @version 1.0
  6. // @description 自动打开链接列表
  7. // @author Chr_
  8. // @include *
  9. // @connect steamcommunity.com
  10. // @connect steampowered.com
  11. // @license AGPL-3.0
  12. // @icon https://blog.chrxw.com/favicon.ico
  13. // @grant GM_registerMenuCommand
  14. // ==/UserScript==
  15.  
  16. (function () {
  17. 'use strict';
  18.  
  19. // 注册(不可用)菜单项
  20. GM_registerMenuCommand('输入链接列表', openLinks);
  21.  
  22. function openLinks() {
  23. // 弹出输入框
  24. const input = prompt('请输入网页链接列表,每行一个链接:');
  25. if (!input) return;
  26.  
  27. // 解析输入的链接列表,排除空行和无效的URL
  28. const urls = input.split('\n').map(url => url.trim()).filter(url => isValidUrl(url));
  29.  
  30. if (urls.length === 0) {
  31. alert('没有有效的链接');
  32. return;
  33. }
  34.  
  35. // 打开链接
  36. openNextLink(urls);
  37. }
  38.  
  39. function isValidUrl(url) {
  40. try {
  41. new URL(url);
  42. return true;
  43. } catch (_) {
  44. return false;
  45. }
  46. }
  47.  
  48. function openNextLink(urls) {
  49. if (urls.length === 0) return;
  50.  
  51. const url = urls.shift();
  52. const newTab = window.open(url, '_blank');
  53.  
  54. // 监听标签页关闭事件
  55. const checkTabClosed = setInterval(() => {
  56. if (newTab.closed) {
  57. clearInterval(checkTabClosed);
  58. openNextLink(urls);
  59. }
  60. }, 1000);
  61. }
  62. })();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址