前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hexo添加雪花动态效果背景

Hexo添加雪花动态效果背景

作者头像
花猪
发布2022-02-16 15:29:28
3.1K0
发布2022-02-16 15:29:28
举报

前言

偶然间看到名为Ln的博客界面,感觉这个雪花动效好美哦,之前也看过好多下雪效果,感觉个人唯独中意这款。

教程链接:https://weilining.cf/112.html

操作

操作过程很简单,找到主题配置文件_config.butterfly.yml,在injectbottom引入以下js文件:

代码语言:javascript
复制
inject:
  head:
  bottom:
    - <div><canvas id="snow" style="position:fixed;top:0;left:0;width:100%;height:100%;z-index:99999;pointer-events:none"></canvas></div>
    - <script>const notMobile = (!(navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)));</script>
    - <script async type="text/javascript" src="https://cdn.jsdelivr.net/gh/Candinya/Kratos-Rebirth@latest/source/js/snow.min.js"></script>

重新部署,启动就可以看见啦。

其他下雪动效

顺便把之前找到过的一款下雪动效的操作方法也写出来,喜欢的可以拿去

六边形雪片

操作过程也很简单,在\themes\butterfly\source\js目录下新建一个snow.js文件,然后将以下内容写入该文件:

代码语言:javascript
复制
(function($){
    $.fn.snow = function(options){
    var $flake = $('<div id="snowbox" />').css({'position': 'absolute','z-index':'9999', 'top': '-50px'}).html('&#10052;'),
    documentHeight  = $(document).height(),
    documentWidth   = $(document).width(),
    defaults = {
        minSize     : 10,
        maxSize     : 20,
        newOn       : 1000,
        flakeColor  : "#AFDAEF" /* 此处可以定义雪花颜色,若要白色可以改为#FFFFFF */
    },
    options = $.extend({}, defaults, options);
    var interval= setInterval( function(){
    var startPositionLeft = Math.random() * documentWidth - 100,
    startOpacity = 0.5 + Math.random(),
    sizeFlake = options.minSize + Math.random() * options.maxSize,
    endPositionTop = documentHeight - 200,
    endPositionLeft = startPositionLeft - 500 + Math.random() * 500,
    durationFall = documentHeight * 10 + Math.random() * 5000;
    $flake.clone().appendTo('body').css({
        left: startPositionLeft,
        opacity: startOpacity,
        'font-size': sizeFlake,
        color: options.flakeColor
    }).animate({
        top: endPositionTop,
        left: endPositionLeft,
        opacity: 0.2
    },durationFall,'linear',function(){
        $(this).remove()
    });
    }, options.newOn);
    };
})(jQuery);
$(function(){
    $.fn.snow({ 
        minSize: 5, /* 定义雪花最小尺寸 */
        maxSize: 50,/* 定义雪花最大尺寸 */
        newOn: 300  /* 定义密集程度,数字越小越密集 */
    });
});

然后将该js文件引入主题配置文件_config.butterfly.yml,同样在在injectbottom处:

代码语言:javascript
复制
inject:
  head:
  bottom:
	- <script src="/js/snow.js"></script> # 下雪动效

重新部署,启动,就可以看到效果啦。

结尾

把之前无比喜爱的樱花🌸动效换掉了,也许碰到更好看的就把这个也换掉啦。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-02-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 操作
  • 其他下雪动效
    • 六边形雪片
    • 结尾
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档