优化博客园的JS代码总结

为Markdown添加目录

这里我参考的是妙音天女的文章。

为文章添加版权信息

这里我参考的是呆尐兔兔的文章。

最后的代码

<script language="javascript" type="text/javascript">
function setCopyright(){
    /* 设置版权信息,转载出处自动根据页面url生成
     * window.location.href:读取当前url
     */
    var info_str =  '<p>本文为作者原创,转载请注明出处:<a class="uri"></a></p><hr></hr>',
        info = $(info_str),
        info_a = info.find("a"),
        url = window.location.href;
    $(info_a[0]).attr("href",url).text(url);
    $("#cnblogs_post_body").prepend(info);
}
function GenerateContentList()
{
    var mainContent = $('#cnblogs_post_body');
    var h2_list = $('#cnblogs_post_body h2');//如果你的章节标题不是h2,只需要将这里的h2换掉即可

    if(mainContent.length < 1)
        return;

    if(h2_list.length>0)
    {
        var content = '<a name="_labelTop"></a>';
        content += '<div id="navCategory" style="color:#152e97;">';
        content += '<p style="font-size:18px;"><b>目录</b></p>';
        content += '<ul>';
        for(var i=0; i<h2_list.length; i++)
        {
            var go_to_top = '<div style="text-align: right;"><a href="#_labelTop" style="color:#f68a33">回到顶部</a><a name="_label' + i + '"></a></div>';
            $(h2_list[i]).before(go_to_top);

            var h3_list = $(h2_list[i]).nextAll("h3");
            var li3_content = '';
            for(var j=0; j<h3_list.length; j++)
            {
                var tmp = $(h3_list[j]).prevAll('h2').first();
                if(!tmp.is(h2_list[i]))
                    break;
                var li3_anchor = '<a name="_label' + i + '_' + j + '"></a>';
                $(h3_list[j]).before(li3_anchor);
                li3_content += '<li><a href="#_label' + i + '_' + j + '">' + $(h3_list[j]).text() + '</a></li>';
            }

            var li2_content = '';
            if(li3_content.length > 0)
                li2_content = '<li><a href="#_label' + i + '">' + $(h2_list[i]).text() + '</a><ul>' + li3_content + '</ul></li>';
            else
                li2_content = '<li><a href="#_label' + i + '">' + $(h2_list[i]).text() + '</a></li>';
            content += li2_content;
        }
        content += '</ul>';
        content += '</div><p>&nbsp;</p>';
        content += '<hr style="height:1px;border:none;border-top:1px dashed #0066CC;"/>';
        if($('#cnblogs_post_body').length != 0 )
        {
            $($('#cnblogs_post_body')[0]).prepend(content);
        }
    }
}
GenerateContentList();
setCopyright();
</script>

将它复制到博客园设置->页脚Html代码即可。

原文地址:https://www.cnblogs.com/huixi/p/you-hua-bo-ke-yuan-deJS-dai-ma-zong-jie.html

时间: 2024-10-09 12:29:56

优化博客园的JS代码总结的相关文章

将微博或者qq空间的说说同步至博客园 wcf+js(ajax)跨域请求(1)

前天刚写了篇文章使用Bootstrap为你的博客园自定义轮播图片(今天将图片加载的顺序调整了下,不在访问的时候直接加载,而是页面加载最后在脚本里面动态添加dom元素),虽说技术含量不怎么高,但是大家还算感兴趣.其实对博主来说最关键是博客的积分在涨.所以趁热打铁,再来一篇使用wcf+js ajax跨域请求数据同步空间说说的帖子. 因为是请求qq说说的数据,所以要登陆我的qq,这个很麻烦,总不能让每个访客都登陆的qq,然后把数据取出来吧,而且qq也没有相关的接口提供,登陆的时候还要处理验证码.所以这

如何在博客园没有js执行权限下执行js脚本

前言 小弟刚刚申请的这个博客园博客还比较年轻,没有js执行权限,但是我又想执行js脚本,只好动动歪脑筋. 先从博客园管理中的“页首Html代码”中填写script标签代码,发现保存直接被删除了,又测试了下iframe和frame标签,一样被删除了. 被删除,script标签没有被写入DOM: 解决方案-利用IMG标签的行内事件执行JS 虽然script被删,但是在随后的测试中发现可以添加图片标签. 代码: <img src="http://www.baidu.com/img/baidu_j

博客园新语言代码高亮以及OpenLiveWriter插件开发

参考: 新语言代码高亮及Windows Live Writer插件开发 最近学习Swift,在博客上写笔记的时候一直觉得Swift代码的高亮不太令人满意,因为博客园的编辑器上传代码模板中没有包括Swift在内的新语言. 偶然看到了上面这篇参考博文,为我提供了一些解决思路,决定一试. 1.HighLight.js 下载地址:https://highlightjs.org/ 在下载页面选择自己需要适配的编程语言,然后下载得到一个压缩包,解压后内容如下: highlight.pack.js中包含的对选

博客园申请js权限

申请了三次,都被拒了,没想到这东西要求这么严的...... 这是在网上看到的别人写的,很礼貌...... 尊敬的博客园管理员, 请问是否可以帮我开通js权限,我需要一写简单的js来解决例如代码高亮等外观调整. 谢谢您的帮助. 原文地址:https://www.cnblogs.com/tanrong/p/8593144.html

博客园界面风格代码风格自定义设置

博客园设置界面风格 如何添加一个侧边栏导航 1.在自定义脚本里面添加如下js ## <script> function CreatePostNavigator() { // 目录标题的div var navigatorTitleDiv = '<div id="navigatorTitleDiv">隐藏目录</div>' // 目录所有内容的div var navigatorDivContent = '<div id="navigato

修改博客园markdown编辑器代码高亮风格的方法

???????作为一个工程师,追求极致与艺术也应当成为我们生活中的一部分,作为自己的心爱之物--博客,当然也得装扮一下,我对代码高亮有自己所喜欢的风格~还好程序员的世界总是共通的,已经有前辈开发了一些代码高亮的样式可供我们开箱即用.Highlightjs就是这样一款产品. ???????下面介绍一下我是如何将这款产品应用于博客园markdown编辑器中的. 第一步,找到你所喜欢的高亮主题 ???????打开Hightlightjs的demo页面 选择你所喜欢的高亮主题.我选择的是Atom One

博客园“可运行&quot;代码

textarea <textarea style="width: 450; height: 300" id="theCode" title="双击运行代码" ondblclick="runCode('theCode');"> 这里放入运行的Html代码. </textarea><br /> <input onclick="runCode('theCode')" va

博客园Skin CSS代码 Version 3.0

/* Minification failed. Returning unminified contents. (187,73): run-time error CSS1036: Expected expression, found '#' */ body { background-color: #F5F5F5; } .clear { clear: both; } html { color: #000; overflow-y: scroll; background: #fff; } body, h

博客园Skin CSS代码

/* Minification failed. Returning unminified contents. (187,73): run-time error CSS1036: Expected expression, found '#' */ body { background:url('http://images.cnblogs.com/cnblogs_com/litao0505/806357/o_bg.jpg') top center fixed; background-repeat: r