📖 使用文档

从安装到开发,一站式了解智能超链接识别

🚀 快速开始

只需三步,即可开始使用智能超链接识别扩展。

  1. 访问 Chrome Web Store,点击「添加至 Chrome」安装扩展。
  2. 打开任意网页,点击工具栏中的扩展图标,开启当前网站的开关。
  3. 页面中的纯文本 URL 和邮箱地址将自动转换为可点击的超链接,工具栏图标会显示转换数量。

提示:扩展采用白名单机制,需要手动为每个网站启用。在设置页面可以批量管理已启用的网站,子域名会自动包含。

📦 安装指南

方式一:Chrome Web Store(推荐)

  1. 访问 Chrome Web Store 页面
  2. 点击「添加至 Chrome」按钮,在弹出的对话框中点击「添加扩展程序」。
  3. 安装完成后,工具栏会出现扩展图标,后续版本将自动更新。

方式二:GitHub Release

  1. 前往 GitHub Releases 下载最新版本的 ZIP 文件并解压。
  2. 在 Chrome 地址栏输入 chrome://extensions,开启右上角的「开发者模式」。
  3. 点击「加载已解压的扩展程序」,选择解压后的 extension 文件夹。

方式三:开发者模式

git clone https://github.com/xiaowulang-turbo/SmartHyperlinkRecognition.git

克隆仓库后,按方式二的步骤 2-3 加载 extension 文件夹即可。修改代码后在扩展管理页面点击刷新按钮重新加载。

系统要求

  • Chrome 88 及以上版本(Manifest V3)
  • 兼容基于 Chromium 的浏览器(Edge、Brave 等)

🔧 开发指南

项目结构

SmartHyperlinkRecognition/
├── extension/              # Chrome 扩展核心
│   ├── manifest.json       # Manifest V3 配置
│   ├── background.js       # Service Worker
│   ├── content.js          # 内容脚本(核心转换逻辑)
│   ├── popup.html/css/js   # 弹窗界面
│   ├── options.html/css/js # 设置页面
│   ├── i18n.js             # 扩展内国际化
│   ├── welcome.html/js     # 首次安装欢迎页
│   └── icons/              # 图标资源
├── website/                # 官方网站
│   ├── index.html          # 首页
│   ├── privacy.html        # 隐私政策
│   ├── docs.html           # 使用文档
│   ├── css/style.css       # 样式
│   └── js/                 # 脚本与国际化
└── scripts/                # 构建辅助脚本

架构概览

扩展基于 Manifest V3,由四个核心模块组成:

  • Service Worker(background.js):管理配置、白名单切换、Badge 计数更新。
  • Content Script(content.js):使用 TreeWalker 遍历文本节点,正则匹配 URL/邮箱并转换为超链接;通过 MutationObserver 实时处理动态内容。
  • Popup(popup.html/js):显示当前域名、白名单开关和转换统计。
  • Options(options.html/js):白名单管理、排除标签、精确模式等高级设置。

数据流

配置存储在 chrome.storage.sync。页面加载时 Content Script 读取配置,检查白名单后执行转换,并通过消息机制将链接计数上报给 Service Worker 更新 Badge。

本地开发流程

  1. 克隆仓库:git clone 并进入项目目录。
  2. chrome://extensions 开启开发者模式,加载 extension 文件夹。
  3. 修改代码后,点击扩展管理页面的刷新按钮重新加载,或刷新目标网页查看效果。
  4. 调试时使用 DevTools:Service Worker 可在扩展详情页打开;Content Script 在目标页面的控制台查看;Popup 右键「检查」打开。

参与贡献

欢迎提交 Issue 和 Pull Request!请遵循 ES6+ 规范,保持代码简洁可读,并在不同网站上测试新功能。

前往 GitHub 仓库