
最近在 CSDN 发布文章时我遇到一个比较奇怪的问题正文里一些原本只是普通文字的技术关键词比如雷达Track坐标转换算法在文章预览或者正式发布以后会自动变成蓝色。更麻烦的是点击这些词以后还可能跳转到和当前文章内容并不相关的页面。一开始我以为是 Markdown、富文本编辑器或者复制格式导致的后来实际检查页面 DOM 后发现问题并不在文章源码本身。一、先确认不是 Markdown 导致的我最开始使用 Markdown 编辑器写文章。后来发现“雷达”“Track”“坐标转换”等词发布后会自动变蓝。于是我又测试了富文本编辑器结果仍然存在类似现象。所以可以基本排除这是 Markdown 转换产生的普通超链接。二、检查 DOM发现关键词被重新包装了在 Microsoft Edge 中对蓝色关键词右键检查例如“雷达”这个词最终页面里的 DOM 类似spanclasswords-blog hl-git-1data-tit雷达data-pretit雷达雷达/span可以看到几个比较明显的属性words-blog hl-git-1>三、继续检查点击事件在 Edge 开发者工具 Console 中输入$0可以看到当前选中的元素。再执行getEventListeners($0)我的结果是{}说明这个 span 本身并没有直接绑定 click 事件。继续查看$0.className得到words-blog hl-git-1因此比较合理的判断是页面可能通过更上层的事件委托对.words-blog这类元素统一处理点击行为。所以单纯修改文章 Markdown并不能真正解决这个问题。四、最终处理思路Tampermonkey 本地屏蔽既然最终页面中的关键词会被加上.words-blog .hl-git-1那么可以在本地浏览器里把这些样式和点击行为直接屏蔽掉。我使用的是Microsoft Edge Tampermonkey需要注意这个方法只会影响自己浏览器看到的页面不会修改 CSDN 服务器上的文章也不会影响其他读者看到的页面。五、Edge 里先开启“允许用户脚本”这里是我实际遇到的一个坑。安装 Tampermonkey 并创建脚本以后我一开始看到提示此脚本尚未被执行后来才发现是 Edge 没有允许扩展运行用户脚本。我的操作路径是Edge 右上角三个点 → 扩展 → 管理扩展 → 找到“篡改猴 / Tampermonkey” → 详情 → 打开“允许用户脚本”页面里会出现类似提示允许用户脚本 此扩展能运行未经 Microsoft Edge 评审的代码 可能会使你的设备或数据面临风险。 仅在你完全信任此扩展的情况下启用此扩展。把“允许用户脚本”打开以后再刷新 CSDN 页面。六、Tampermonkey 脚本打开 Tampermonkey新建脚本。删除默认内容然后粘贴下面代码// UserScript// name CSDN 去除正文关键词自动链接// namespace https://example.com/// version 1.0// description 去除 CSDN 博客正文中自动插入的关键词高亮和点击跳转// match https://blog.csdn.net/*// grant none// run-at document-idle// /UserScript(function(){use strict;conststyledocument.createElement(style);style.textContent#content_views .words-blog, #content_views .new-words-blog, #content_views .hl-git-1, #content_views .hl-1, #content_views [class*words-blog], #content_views [class*hl-git] { color: inherit !important; background: none !important; background-image: none !important; text-decoration: none !important; border: none !important; box-shadow: none !important; cursor: text !important; pointer-events: none !important; padding: 0 !important; margin: 0 !important; };document.head.appendChild(style);})();保存以后刷新 CSDN 文章页面。七、脚本核心作用核心其实就是这些 CSScolor:inherit!important;background:none!important;text-decoration:none!important;cursor:text!important;pointer-events:none!important;作用分别是恢复正文原来的文字颜色去掉关键词背景高亮去掉链接样式恢复普通文本鼠标样式禁止点击这样自己查看文章时这些自动处理的关键词就会恢复成普通正文效果。八、如果脚本仍然没有执行如果 Tampermonkey 仍然提示此脚本尚未被执行可以检查下面几个地方。1. Tampermonkey 是否启用在 Edge 地址栏输入edge://extensions/确认篡改猴处于启用状态。2. 用户脚本是否启用进入 Tampermonkey 管理面板确认对应脚本已经开启。3. “允许用户脚本”是否打开再次确认路径Edge 右上角三个点 → 扩展 → 管理扩展 → 篡改猴 → 详情 → 允许用户脚本这是我这次实际遇到的关键问题。4. 页面地址是否匹配脚本中使用// match https://blog.csdn.net/*因此类似这种地址https://blog.csdn.net/用户名/article/details/文章ID都可以匹配。后面带?spm...之类参数也不会影响。九、这个方案的局限这个方法并不能让所有读者都看不到这些关键词链接。因为 Tampermonkey 运行在本地浏览器中。实际效果是自己打开文章 → Tampermonkey 执行 → 蓝色关键词被屏蔽而其他没有安装脚本的读者仍然会看到 CSDN 原来的页面效果。所以更准确地说这个方法是本地屏蔽 CSDN 文章正文中的自动关键词高亮和点击行为。不是修改 CSDN 服务器内容。十、总结这次排查过程可以概括成发现关键词自动变蓝 ↓ 怀疑 Markdown ↓ 测试富文本仍然存在 ↓ 检查页面 DOM ↓ 发现 words-blog / hl-git-1 ↓ 确认是最终页面二次处理 ↓ 安装 Tampermonkey ↓ 创建屏蔽脚本 ↓ Edge 开启“允许用户脚本” ↓ 刷新页面 ↓ 本地恢复普通正文显示如果你也遇到类似问题可以先在浏览器里右键关键词 → 检查看看最终 DOM 是否包含words-blog hl-git-1如果存在类似 class就可以尝试使用本文的 Tampermonkey 脚本进行本地处理。对我来说这次真正容易忽略的地方反而不是脚本本身而是 Edge 中的扩展 → 管理扩展 → 篡改猴 → 详情 → 允许用户脚本这个开关。