新脚本,为大佬论坛的不同级别的域名标注颜色,方便阅读和筛选。

V wangqian (UID: 2425) 9月前

3694 7

1.说明

在 上对域名进行高亮处理,并根据前缀长度设置不同的颜色。

其中:
一级域名:1-2字符的传说域名,金色
二级域名:3-4字符的稀有域名,红色
三级域名:5-6字符的一般域名,绿色
四级域名:7-8字符的大众域名,蓝色
五级域名:9字符以上的长域名,灰色

2.展示效果

3.下载链接
dalao.net 域名高亮显示 (greasyfork.org)

 

4.源码

// ==UserScript==
// @name     dalao.net 域名高亮显示
// @version  1
// @grant    none
// @description  在 dalao.net 上对域名进行高亮处理,并根据前缀长度设置不同的颜色
// @author       wangqian
// @match       *://dalao.net/*
// @match       *://www.dalao.net/*
// ==/UserScript==

(function() {
    function getHighlightColor(domainName) {
        var prefix = domainName.split('.')[0];  // 获取域名的前缀
        var length = prefix.length;

        if (length >= 1 && length <= 2) {
            return 'yellow';  // 一级域名
        } else if (length >= 3 && length <= 4) {
            return 'pink';  // 二级域名
        } else if (length >= 5 && length <= 6) {
            return 'lightgreen';  // 三级域名
        } else if (length >= 7 && length <= 8) {
            return 'lightblue';  // 四级域名
        } else {
            return 'lightgray';  // 五级域名
        }
    }

    function highlightDomainNames(textNode) {
        var parent = ;
        var textContent = textNode.textContent;

        var domainRegex = /\b((?:[a-z][a-z0-9-]*[a-z0-9]\.)+(?:[a-z][a-z-]{1,61}[a-z]|xn--[a-z0-9]{1,59}|[a-z]{2,}))\b/gi;
        var match = domainRegex.exec(textContent);

        while (match !== null) {
            var beforeMatchNode = document.createTextNode(textContent.slice(0, match.index));
            var matchNode = document.createElement('span');
            matchNode.style.backgroundColor = getHighlightColor(match[0]);  // 根据域名前缀长度设置高亮颜色
            matchNode.textContent = match[0];
            var afterMatchNode = document.createTextNode(textContent.slice(domainRegex.lastIndex));

            parent.insertBefore(beforeMatchNode, textNode);
            parent.insertBefore(matchNode, textNode);
            parent.insertBefore(afterMatchNode, textNode);

            parent.removeChild(textNode);

            textNode = afterMatchNode;
            textContent = textNode.textContent;
            match = domainRegex.exec(textContent);
        }
    }

    function findTextNodes(node) {
        var textNodes = [];

        for (var childNode of node.childNodes) {
            if (childNode.nodeType === Node.TEXT_NODE) {
                (childNode);
            } else {
                textNodes = textNodes.concat(findTextNodes(childNode));
            }
        }

        return textNodes;
    }

    var textNodes = findTextNodes(document.body);

    for (var textNode of textNodes) {
        highlightDomainNames(textNode);
    }
})();
随便逛逛
已有评论 (7)
  • 头像
    V wangqian (UID: 2425) @Ta
    9月前 (随便逛逛)
    1

    下载tampermonkey浏览器插件就可以用。

  • 头像
    V wangqian (UID: 2425) @Ta
    9月前 (随便逛逛)
    2
    我是小青蛙 用了无效 不知道为啥。别的屏蔽 显示摘要啥的都可以

    看看把别的插件关掉,单独用这个能不能用。我没有检查过插件冲突的问题。

  • 头像
    V wangqian (UID: 2425) @Ta
    9月前 (随便逛逛)
    3
    Y 我的也用不了

    可能有冲突,你只开启这个,把别的关掉试试

  • 头像
    V wangqian (UID: 2425) @Ta
    9月前 (随便逛逛)
    4
    龙眼 也要考虑后缀长度, 和 .com 的权重。

    可以的,很好的提议

  • 头像
    V wangqian (UID: 2425) @Ta
    9月前 (随便逛逛)
    5
    老张博客 这个功能不错。

    谢谢

  • 头像
    V wangqian (UID: 2425) @Ta
    9月前 (随便逛逛)
    6
    Y 试了,不行啊

    那就不知道了,我这边一切正常,而且代码也看不出有什么问题

  • 头像
    V wangqian (UID: 2425) @Ta
    9月前 (随便逛逛)
    7
    yunfan 安装了 没有效果,应该是有问题。

    这就不清楚了,我这边是可以用的

    • 大佬论坛
      8
      登录后才可回帖  登录 注册

本站同款香港KC服务器 酷盾安全联盟 智能优化防护 ROOVPS 便宜服务器 盾云SCDN 月付只需1元起 点我免费领取大流量卡