← 全部示例

JavaScript 隐私 news.ycombinator.com

Hacker News:复制干净的链接

为每个帖子添加一个按钮,复制去除跟踪参数的干净链接,便于分享。

可复制的代码

// Add a button to copy each story link with tracking params stripped
(function () {
  document.querySelectorAll('.titleline > a:first-child').forEach(function (a) {
    if (a.parentNode.querySelector('.jz-copy-clean')) { return; }
    const btn = document.createElement('a');
    btn.className = 'jz-copy-clean';
    btn.textContent = ' [copy clean]';
    btn.href = 'javascript:void(0)';
    btn.style.cssText = 'color:#ff6600;font-size:8pt;margin-left:6px;cursor:pointer;';
    btn.addEventListener('click', function () {
      try {
        const u = new URL(a.href);
        ['utm_source','utm_medium','utm_campaign','utm_term','utm_content',
         'fbclid','gclid','ref','ref_src'].forEach(function (p) {
          u.searchParams.delete(p);
        });
        navigator.clipboard.writeText(u.toString());
        btn.textContent = ' [copied]';
        setTimeout(function () { btn.textContent = ' [copy clean]'; }, 1500);
      } catch (e) {}
    });
    a.parentNode.appendChild(btn);
  });
})();

如何使用此示例

  1. 用上方按钮复制代码。
  2. 安装 JustZix(2 分钟),在目标页面打开扩展。
  3. 添加一条匹配该页面的新规则。
  4. 将代码粘贴到规则的 JavaScript 面板并保存 — 每次访问页面时都会运行。

为此示例评分

暂无评分 — 成为第一个。

此示例有效吗?

没有可粘贴的地方,代码片段毫无用处。

JustZix 安装只需 2 分钟,并在每个匹配的页面上运行你的代码。无需账户、无需付费。

免费下载 查看应用场景