腾讯文档自动选择浏览器打开

自动选择在浏览器中打开腾讯文档链接,跳过中间页面

  1. // ==UserScript==
  2. // @name 腾讯文档自动选择浏览器打开
  3. // @namespace http://tampermonkey.net/
  4. // @version 1.4
  5. // @description 自动选择在浏览器中打开腾讯文档链接,跳过中间页面
  6. // @author 微信11208596
  7. // @match *://docs.qq.com/*
  8. // @grant none
  9. // @license UNLICENSED
  10. // @copyright 2024, Your name
  11. // @run-at document-start
  12. // ==/UserScript==
  13.  
  14. /* 版权所有 (c) 2024
  15. * 保留所有权利
  16. * 本代码是私有的,未经作者明确授权,不得以任何形式使用、复制、修改或分发。
  17. */
  18.  
  19. (function() {
  20. 'use strict';
  21.  
  22. // 处理中间页面
  23. if (location.href.includes('scenario/docs-desktop-client-guide.html')) {
  24. const urlParams = new URLSearchParams(location.search);
  25. const targetUrl = urlParams.get('url');
  26. if (targetUrl) {
  27. location.replace(decodeURIComponent(targetUrl));
  28. }
  29. return;
  30. }
  31.  
  32. // 处理文档列表页面
  33. document.addEventListener('click', function(e) {
  34. const link = e.target.closest('a');
  35. if (!link || !link.href || !link.href.includes('docs.qq.com')) return;
  36.  
  37. // 阻止默认行为
  38. e.preventDefault();
  39. e.stopPropagation();
  40.  
  41. // 构建直接访问链接
  42. let finalUrl = link.href;
  43. if (finalUrl.includes('scenario/docs-desktop-client-guide.html')) {
  44. const params = new URLSearchParams(new URL(finalUrl).search);
  45. const docUrl = params.get('url');
  46. if (docUrl) {
  47. finalUrl = decodeURIComponent(docUrl);
  48. }
  49. }
  50.  
  51. // 添加浏览器模式参数
  52. const url = new URL(finalUrl);
  53. url.searchParams.set('forceBrowser', '1');
  54. url.searchParams.set('browserMode', 'true');
  55.  
  56. // 在新窗口打开
  57. window.open(url.href, '_blank');
  58. }, true);
  59. })();

QingJ © 2025

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