Greasy Fork镜像 还支持 简体中文。

Generate markdown files' table of contents or anchor links menu automatically

Generate markdown files' table of contents or anchor links menu automatically, make markdown files easy to read

// ==UserScript==
// @name         Generate markdown files' table of contents or anchor links menu automatically
// @namespace    http://tampermonkey.net/
// @version      0.5
// @description  Generate markdown files' table of contents or anchor links menu automatically, make markdown files easy to read
// @author       ladyrank
// @include      https://github.com/*
// @include      https://*.muc*.cn/*
// @include      https://*.zuim*.com/*
// @grant        none
// @require      https://cdn.staticfile.org/jquery/3.4.1/jquery.min.js
// ==/UserScript==

(function () {
    'use strict';

    var detect = function (){
        var links = $('a.anchor');
        var html = '';
        var $wrap = '';
        var winH = window.screen.availHeight || window.screen.height;
    
        if (!links || !links.length) {
            return false;
        }
    
        html = '<div id="wx-mkd-toc" style="z-index: 9999; position: fixed; bottom: 50px; right: 20px; background: #f2f2f2; padding: 10px; border: 1px solid #f2f2f2;"><h1 style="margin: 0; font-size: 16px;"><a href="javascript:;"><span>+</span>目录预览</a></h1><div class="wx-mkd-con" style="display: none; overflow: hidden; overflow-y: scroll; padding: 20px; max-height: '+ (winH*.5)+'px;"><ul style="margin: 0; padding: 0;">';
        $wrap = $('body');
    
        $.each(links, function (idx, item) {
            var $this = $(item);
            var $p = $this.parent();
            var tag = (($p[0] && $p[0].tagName) || '').toLowerCase();
            var tagNum = (tag || '').replace(/h/gi, '');
            var mLeft = tagNum * 10;
    
            html += '<li style="margin-left: ' + mLeft + 'px;" class="c_toc_' + tag + '"><a href="' + $this.attr('href') + '">' + $p.text() + '</a></li>'
        });
    
        html += '</ul></div></div>';
    
        $wrap.prepend(html);

        $wrap.on('click', '#wx-mkd-toc h1', function(){
            var $this = $(this);
            var $thisSpan = $this.find('span');
            var thisSpanTxt = $thisSpan.text();
            var $thisCon = $this.parent().find('.wx-mkd-con');
    
            if(thisSpanTxt.match(/\+/gi)){
                $thisCon.show();
                $thisSpan.text('-');
            } else {
                $thisCon.hide();
                $thisSpan.text('+');
            }
        });
    };

    setTimeout(function(){
        detect();
    }, 2000);

})();

QingJ © 2025

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