前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hexo + Fluid 美化

Hexo + Fluid 美化

作者头像
EmoryHuang
发布2022-10-27 21:16:59
1.1K0
发布2022-10-27 21:16:59
举报
文章被收录于专栏:EmoryHuang's BlogEmoryHuang's Blog

本博客的主题已由 Fluid 改为 Butterfly, 部分功能可能失效,请注意!

Hexo + Fluid 美化

Fluid 简介

Fluid 是基于 Hexo 的一款 Material Design 风格的主题,由 Fluid-dev 负责开发与维护。

主题 GitHub: https://github.com/fluid-dev/hexo-theme-fluid

预览网站:

Fluid 主题安装

方式一

Hexo 5.0.0 版本以上,推荐通过 npm 直接安装,进入博客目录执行命令:

代码语言:javascript
复制
npm install --save hexo-theme-fluid

提示:如果 npm 速度慢或者安装失败,可以通过淘宝镜像安装,即使用如下命令

代码语言:javascript
复制
cnpm install --save hexo-theme-fluid

然后在博客目录下创建 _config.fluid.yml,将主题的 config.yml 内容复制进去。

方式二

下载 最新 release 版本 解压到 Hexo 博客目录中的 themes 目录,并将解压出的文件夹重命名为 fluid

指定 Fluid 主题

如下修改 Hexo 博客目录中的 _config.yml

代码语言:javascript
复制
theme: fluid  # 指定主题
language: zh-CN  # 指定语言,会影响主题显示的语言,按需修改

Fluid 美化

基础配置修改

对于 Fluid 主题的基础配置修改,在 官方配置指南 以及 theme/fluid/_config.yml 或者 _config.fluid.yml 中有详细的提示说明,这里不再赘述。

注意

本文中的 " 博客配置 " 指的 Hexo 博客目录下的 _config.yml" 主题配置 " 指的是 theme/fluid/_config.yml 或者 _config.fluid.yml ,注意区分

添加网站运行时间

页脚添加网站运行时间,只需要在主题配置中的 footer: content 添加:

代码语言:javascript
复制
footer:
  content: '
    <div>
      <span id="timeDate">载入天数...</span>
      <span id="times">载入时分秒...</span>
      <script src="/js/duration.js"></script>
    </div>
  '

之后在主题目录下创建 source/js/duration.js,内容如下:

代码语言:javascript
复制
var now = new Date();
function createtime() {
    var grt= new Date("03/03/2021 12:00:00");//在此处修改你的建站时间,格式:月/日/年 时:分:秒
    now.setTime(now.getTime()+250);
    days = (now - grt ) / 1000 / 60 / 60 / 24; dnum = Math.floor(days);
    hours = (now - grt ) / 1000 / 60 / 60 - (24 * dnum); hnum = Math.floor(hours);
    if(String(hnum).length ==1 ){hnum = "0" + hnum;} minutes = (now - grt ) / 1000 /60 - (24 * 60 * dnum) - (60 * hnum);
    mnum = Math.floor(minutes); if(String(mnum).length ==1 ){mnum = "0" + mnum;}
    seconds = (now - grt ) / 1000 - (24 * 60 * 60 * dnum) - (60 * 60 * hnum) - (60 * mnum);
    snum = Math.round(seconds); if(String(snum).length ==1 ){snum = "0" + snum;}
    document.getElementById("timeDate").innerHTML = "本站已安全运行 "+dnum+" 天 ";
    document.getElementById("times").innerHTML = hnum + " 小时 " + mnum + " 分 " + snum + " 秒";
}
setInterval("createtime()",250);

将建站时间修改为你自己的建站时间,即可在页脚加入网站运行时间。

添加一言

在主题配置 _config.yml 中找到 custom_head ,修改如下:

代码语言:javascript
复制
custom_head: '
    <!-- 一言 -->
    <script src="https://v1.hitokoto.cn/?encode=js&select=%23hitokoto" defer></script>
    '

修改完成之后,在任意地方添加如下代码即可获取一言

代码语言:javascript
复制
<p id="hitokoto">:D 获取中...</p>

添加 GitHub 日历热力图

这里提供一个简单的 API Github Chart API

直接在需要的位置添加如下 HTML 语句即可,注意将 GitHub 用户名修改为你自己的。

代码语言:javascript
复制
<img src="https://ghchart.rshah.org/emoryhuang" alt="emoryhuang's Github chart" />

效果如下所示:

emoryhuang's Github chart
emoryhuang's Github chart

也可以改变颜色,只需要修改为 hex 颜色代码即可

代码语言:javascript
复制
<img src="https://ghchart.rshah.org/409ba5/emoryhuang" alt="emoryhuang's Github chart" />
emoryhuang's Github chart
emoryhuang's Github chart

添加看板娘

向你的 Hexo 里放上一只二次元看板娘,项目地址

演示:https://l2dwidget.js.org/dev.html

模型预览:https://huaji8.top/post/live2d-plugin-2.0/

安装

在 Git Bash 中安装模块:

代码语言:javascript
复制
npm install --save hexo-helper-live2d

or

代码语言:javascript
复制
yarn add hexo-helper-live2d
配置

向 Hexo 的 _config.yml 文件添加配置,例子如下

代码语言:javascript
复制
live2d:
  enable: true
  scriptFrom: local
  pluginRootPath: live2dw/
  pluginJsPath: lib/
  pluginModelPath: assets/
  tagMode: false
  debug: false
  model:
    use: live2d-widget-model-wanko  ## 更换为你的模型
  display:
    position: right
    width: 150
    height: 300
  mobile:
    show: true
  react:
    opacity: 0.7

点这里 可以查看现有的模型

在 Git Bash 中安装喜欢的模型

代码语言:javascript
复制
npm install 模型的包名

将包名输入位于 _config.ymlmodel.use 中。

代码语言:javascript
复制
hexo clean
hexo d -g

添加背景黑色线条

背景黑色线条js代码

代码语言:javascript
复制
!function(){function o(w,v,i){return w.getAttribute(v)||i}function j(i){return document.getElementsByTagName(i)}function l(){var i=j("script"),w=i.length,v=i[w-1];return{l:w,z:o(v,"zIndex",-1),o:o(v,"opacity",0.5),c:o(v,"color","0,0,0"),n:o(v,"count",99)}}function k(){r=u.width=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,n=u.height=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight}function b(){e.clearRect(0,0,r,n);var w=[f].concat(t);var x,v,A,B,z,y;t.forEach(function(i){i.x+=i.xa,i.y+=i.ya,i.xa*=i.x>r||i.x<0?-1:1,i.ya*=i.y>n||i.y<0?-1:1,e.fillRect(i.x-0.5,i.y-0.5,1,1);for(v=0;v<w.length;v++){x=w[v];if(i!==x&&null!==x.x&&null!==x.y){B=i.x-x.x,z=i.y-x.y,y=B*B+z*z;y<x.max&&(x===f&&y>=x.max/2&&(i.x-=0.03*B,i.y-=0.03*z),A=(x.max-y)/x.max,e.beginPath(),e.lineWidth=A/2,e.strokeStyle="rgba("+s.c+","+(A+0.2)+")",e.moveTo(i.x,i.y),e.lineTo(x.x,x.y),e.stroke())}}w.splice(w.indexOf(i),1)}),m(b)}var u=document.createElement("canvas"),s=l(),c="c_n"+s.l,e=u.getContext("2d"),r,n,m=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(i){window.setTimeout(i,1000/45)},a=Math.random,f={x:null,y:null,max:20000};u.id=c;u.style.cssText="position:fixed;top:0;left:0;z-index:"+s.z+";opacity:"+s.o;j("body")[0].appendChild(u);k(),window.onresize=k;window.onmousemove=function(i){i=i||window.event,f.x=i.clientX,f.y=i.clientY},window.onmouseout=function(){f.x=null,f.y=null};for(var t=[],p=0;s.n>p;p++){var h=a()*r,g=a()*n,q=2*a()-1,d=2*a()-1;t.push({x:h,y:g,xa:q,ya:d,max:6000})}setTimeout(function(){b()},100)}();

将上面的代码复制,并在此目录下 themes/fluid/source/js/DynamicLine.js 创建文件,将代码全部粘贴进去。

然后在主题配置 _config.yml 中找到 custom_js 或者 custom_css,修改如下:

代码语言:javascript
复制
custom_js:
  - /js/DynamicLine.js

如果不想这么麻烦或者不需要自行修改的话,可以使用我的提供的 CDN

在主题配置 _config.yml 中找到 custom_js 或者 custom_css,修改如下:

(效果添加或去除注释 # 即可使用)

代码语言:javascript
复制
custom_js:
  - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/DynamicRibbon.min.js # 动态彩带
  - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/runtime.min.js # 运行时间
  # - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/Ribbon.min.js # 静态彩带
  # - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/DynamicLine.min.js # 动态黑色线条
  # - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/snowflake.min.js # 小雪花飘落
  # - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/Cherry.min.js #樱花飘落
  # - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/star.min.js # 鼠标跟随小星星
  # - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/containsWord.min.js # 鼠标点击出字
  # - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/love.min.js #鼠标点击出爱心

custom_css:
  - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/shubiao.css #鼠标指针
  - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/scroll.css # 滚动条颜色
  # - //cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/gradient.css # 头部打字机颜色效果渐变

获取源码:

//cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/DynamicLine.js 输入地址框即可

注意去除 .min 这是经过压缩之后的

后面类似的效果本文就不再放源码了,按上面的方法搜一下就好

添加动态彩带

代码语言:javascript
复制
//cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/DynamicRibbon.min.js # 动态彩带

添加静态彩带

代码语言:javascript
复制
//cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/Ribbon.min.js # 静态彩带

添加小雪花飘落效果

代码语言:javascript
复制
//cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/snowflake.min.js # 小雪花飘落

添加樱花飘落效果

代码语言:javascript
复制
//cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/Cherry.min.js #樱花飘落

鼠标跟随小星星

代码语言:javascript
复制
//cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/star.min.js # 鼠标跟随小星星

鼠标点击出字

代码语言:javascript
复制
//cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/containsWord.min.js # 鼠标点击出字

鼠标点击出爱心

代码语言:javascript
复制
//cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/love.min.js # 鼠标点击出爱心

滚动条颜色

代码语言:javascript
复制
//cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/scroll.css # 滚动条颜色

头部打字机颜色效果渐变

代码语言:javascript
复制
//cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/gradient.css # 头部打字机颜色效果渐变

更换鼠标指针样式

代码语言:javascript
复制
//cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/shubiao.css #鼠标指针

参考

相关内容

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Hexo + Fluid 美化
    • Fluid 简介
      • Fluid 主题安装
        • 方式一
        • 方式二
      • 指定 Fluid 主题
        • Fluid 美化
          • 基础配置修改
          • 添加网站运行时间
          • 添加一言
          • 添加 GitHub 日历热力图
          • 添加看板娘
          • 添加背景黑色线条
          • 添加动态彩带
          • 添加静态彩带
          • 添加小雪花飘落效果
          • 添加樱花飘落效果
          • 鼠标跟随小星星
          • 鼠标点击出字
          • 鼠标点击出爱心
          • 滚动条颜色
          • 头部打字机颜色效果渐变
          • 更换鼠标指针样式
        • 参考
          • 相关内容
          相关产品与服务
          腾讯云 BI
          腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档