首页>>资源分享>>源码资源

PbootCMS 文章插入代码断高亮行数插件

2024-02-16 20:34:33 1067

一款与本站一致的代码段高亮插件

微信图片_20240219045255.png

在对应模版目录新建下面JS文件复制代码,直接引用到需要的页面

例如:我们将下面代码起名为1.js放在了网站的template文件夹下,然后在文章详情模版页引入

<script src="{pboot:sitedomain}/template/1.js" type="text/javascript"></script>

下面是js代码,注意第一行的中文需要在最后下载后去引用

document.writeln("<script src='引入下载的daima.js' type='text/javascript'></script><link rel='stylesheet' type='text/css' href='引入下载的daima.css'/>");
$(function() {
    var compatibility = {
        as3: "actionscript",
        "c#": "csharp",
        delphi: "pascal",
        html: "markup",
        xml: "markup",
        vb: "basic",
        js: "javascript",
        plain: "markdown",
        pl: "perl",
        ps: "powershell"
    };
    var runFunction = function(doms, callback) {
        doms.each(function(index, unwrappedDom) {
            var dom = $(unwrappedDom);
            var codeDom = $("<code>");
            if (callback) callback(dom);
            var languageClass = "prism-language-" +
            function(classObject) {
                if (classObject === null) return "markdown";
                var className = classObject[1];
                return compatibility[className] ? compatibility[className] : className
            } (dom.attr("class").match(/prism-language-([0-9a-zA-Z]+)/));
            codeDom.html(dom.html()).addClass("prism-line-numbers").addClass(languageClass);
            dom.html("").addClass(languageClass).append(codeDom)
        })
    };
    runFunction($("pre.prism-highlight"));
    runFunction($('pre[class*="brush:"]'),
    function(preDom) {
        var original;
        if ((original = preDom.attr("class").match(/brush:([a-zA-Z0-9#]+);/)) !== null) {
            preDom.get(0).className = "prism-highlight prism-language-" + original[1]
        }
    });
    Prism.highlightAll()
});


版权说明
文章采用: 《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权。
版权声明:未标注转载均为本站原创,转载时请以链接形式注明文章出处。如有侵权、不妥之处,请联系站长删除。敬请谅解!

相关标签:

登陆
还没有账号?立即注册
忘记密码?
忘记密码
已经有账号?马上登陆
获取验证码
注册
已经有账号?马上登陆 获取邀请码