记一次博客园美化记录

这次疫情窝在家学了点前端的CSS和JQuery,正好来捣鼓一下博客园~

已添加的功能:

  • 人体时钟动画
  • 小老鼠时钟动画
  • B站风格UI
  • 标签云
  • 评论加头像
  • 右下角悬浮按钮(置顶,关注等)
  • 右上角github横幅
  • 背景动画
  • 点击背景弹出价值观文字随机颜色动画
  • 打赏
  • copy添加版权声明文字

有待考虑的功能:

性能以及访问速度等体验方面的考虑,主要看个人喜好

  • 博客精灵
  • 网易云音乐
  • 标签云
  • 背景动画

改了一些可供参考的代码

复制加版权©文字声明,特殊处理了一下,如果是本人则可以开绿灯(拷贝无需添加版权声明)

  // 复制加版权说明 是本人则不会加类似文字
<script language="javascript" type="text/javascript">
			jQuery(document).on('copy', function(e) {
				var selected = window.getSelection();
				var copyFooter = '<br>==============<br>著作权归作者所有。<br>' +
					'商业转载请联系作者获得授权,非商业转载请注明出处。<br>' +
					'作者:CoderWGB<br> 源地址:' + document.location.href +
					'<br>来源:博客园cnblogs<br>© 版权声明:本文为博主原创文章,转载请附上博文链接!';
				//判断是否有md的访问按钮来判断是否本人 因为别人的md 你是看不见的 (目前没想到别的办法)
				var md = $(".postDesc > a:nth-last-child(3)").text() == "MD";
				if(md){
				  copyFooter = "";
				}
				var copyHolder = $('<div>', {
					html: selected + copyFooter,
					style: {
						position: 'absolute',
						left: '-99999px'
					}
				});

				$('body').append(copyHolder);
				selected.selectAllChildren(copyHolder[0]);
				window.setTimeout(function() {
					copyHolder.remove();
				}, 0);
			});
</script>

生成目录那段代码有bug 被我注释掉了,改用markdown的TOC功能更为精准

源文件 cnblog.js

function GenerateContentList() {
  var nodes = $('#cnblogs_post_body :header')

  var content = '<a name="_labelTop"></a>'
  // content += '<div id="navCategory">'
  // content += '<blockquote><p style="font-size: 18pt; color:#a2b4ba"><b>目录</b></p>'
  // content += '<div>'

  // for (var i = 0; i < nodes.length; i++) {
  //   var item = ''
  //   var originTitle = $(nodes[i]).text()
  //   var resolvedTitle = resolveTitle(originTitle)

  //   if (nodes[i].tagName === 'H1') {
  //     item = '<a style="font-size:18px" href="#' + resolvedTitle + '">' + $(nodes[i]).text() + '</a><br>'
  //   } else if (nodes[i].tagName === 'H2') {
  //     item = '<a style="font-size:16px" href="#' + resolvedTitle + '">&emsp;&emsp;' + $(nodes[i]).text() + '</a><br>'
  //   } 
  //   content += item
  // }
  // content += '</blockquote></div>'
  var len = $('#cnblogs_post_body').length
  if ($('#cnblogs_post_body').length != 0) {
    $($('#cnblogs_post_body')[0]).prepend(content)
  }

  $($('#cnblogs_post_body')[len - 1])
  .append('<div id=\'signature\'><p>作者:<a href=\'https://www.cnblogs.com/wgb1234/\'>CoderWGB</a></br>欢迎任何形式的转载,但请务必注明出处。</br>限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。</p></div>')
}

添加点击背景弹出社会主义核心价值观文字动画

// 随机文字动画 
<script type="text/javascript">
    jQuery(document).ready(function() {
    //注意:这里是用的随笔分类做例子,你自己可以根据你自己情况任意设定。
    $(".catListPostCategory>ul").wrap("<div class='wrap' ></div>").parent().css({ 'width': '245px', 'height': '496px' });
    var options = { "range": [-200, 300], "gravity": -10, "xPos": 0.5, "yPos": 0.5, "gravityVector": [0, 0, 1], "interval": 100, "hoverGravityFactor": 0 };
    jQuery("div.wrap").starfieldTagCloud(options);
}); 
</script>

<script language="javascript" type="text/javascript">
    //单击显示随机文字
    var a_idx = 0; 
    jQuery(document).ready(function($) { 
        $("body").click(function(e) { 
       //rgb颜色随机
	  var r = Math.floor(Math.random()*256);
	  var g = Math.floor(Math.random()*256);
	  var b = Math.floor(Math.random()*256);
	 var color =  'rgb'+'('+r+','+g+','+b+')';
        var a = new Array("富强","❤","民主","❤", "文明","❤", "和谐","❤", "自由","❤", "平等","❤", "公正","❤", "法治","❤" ,"爱国","❤", "敬业","❤", "诚信","❤", "友善","❤");
        var $i = $("<span/>").text(a[a_idx]); 
        a_idx = (a_idx+1)%a.length; 
        var x = e.pageX, 
        y = e.pageY; 
        $i.css({ 
            "z-index":5, 
            "top": y - 20, 
            "left": x, 
            "position": "absolute", 
            "font-weight": "bold", 
            "color":  color
        }); 
        $("body").append($i); 
            $i.animate({ 
                "top": y - 180, 
                "opacity": 0 
            }, 
            3000, 
            function() { 
                $i.remove(); 
            });
        }); 
    });
</script>

打赏这个是开源项目,只换了图片和js路径没啥改动

// tctip 支付赞赏/打赏 
<script type="text/javascript" src="//files.cnblogs.com/files/wgb1234/pay.min.js"></script> 

<script>
    new tctip({
        top: '20%',
        button: {
            id: 1,
            type: 'zanzhu',
        },
        list: [
            {
                type: 'alipay',
                qrImg: 'https://files.cnblogs.com/files/wgb1234/zhifubao.bmp' //替换成自己的支付宝付款码
            }, {
                type: 'wechat',
                qrImg: 'https://files.cnblogs.com/files/wgb1234/wx.bmp' //替换成自己的微信付款码
            }
        ]
    }).init()
</script>


DIY的效果还是挺不错的,毕竟很多前辈们都把坑填好了,基本上开箱即用~

参考博客

详谈如何定制自己的博客园皮肤
美化博客园 添加网易云音乐及生成文章目录
前端小白也能快速学会的博客园博客美化全攻略
博客园加上博客精灵

posted @ 2020-03-07 15:27  CoderWGB  阅读(713)  评论(1编辑  收藏  举报