右键菜单
参考内容:

由于本教程涉及的所有修改对缩进格式等有严格要求,担心自己控制不好的可以直接下载静态资源,将压缩包内的butterfly文件夹复制到**[Blogroot]\theme\**目录下覆盖现有主题文件夹即可跳过以下教程的前3步,直接到主题配置文件**_config.butterfly.yml**中参照第4步修改配置项。
在目录下新建文件。注意缩进。
修改[Blogroot]\themes\butterfly\layout\includes\additional-js.pug文件,在末尾添加内容(注意缩进),注意butterfly_v3.6.0取消了缓存配置,转为完全默认,需要将{cache:theme.fragment_cache}改为{cache: true}:
在[Blogroot]\themes\butterfly\source\css\layout\目录下新建galmenu.styl文件。此处开头是默认图标配置。可以在配置项里更换自己喜欢的图标。
在[Blogroot]\_config.butterfly.yml添加如下配置项:
# 自定义右键菜单
GalMenu:
enable: true # true or false 是否开启右键
audio: true # true or false 是否开启点击音乐
music: https://cdn.jsdelivr.net/gh/Akilarlxh/Akilarlxh.github.io@v3.3.3_3/galmenu/galmenu.mp3 #点击音乐,不填则为默认点击音乐
MenuItem: #菜单配置
item1: 首页 # 菜单标题
link1: / # 跳转链接路径
icon1: url('https://cdn.jsdelivr.net/gh/Akilarlxh/Akilarlxh.github.io@v3.3.3_3/galmenu/random.png') # 图片链接,记得按照示例填写。必须用url('')包起来。不填则为默认图标
item2: 时间轴
link2: /archives/
icon2:
item3: 标签
link3: /tags/
icon3:
item4: 分类
link4: /categories/
icon4:
item5: 友人帐
link5: /link/
icon5:
item6: 留言板
link6: /comments/
icon6:前进后退刷新返回顶部等动作直接修改配置项中的link即可实现。例如:
MenuItem: #菜单链接和标签配置
item1: 刷新
link1: javascript:location.reload();
icon1:
item2: 前进
link2: javascript:history.go(1);
icon2:
item3: 后退
link3: javascript:history.go(-1);
icon3:
item4: 返回顶部
link4: '#' # 必须用''包起来不然会被识别成注释符
icon4:这一功能照搬自HCLonely-Hexo博客美化,这是个全局功能,不局限于butterfly主题。
在目录下新建文件:
使用即可访问随机文章。
在[Blogroot]\themes\butterfly\source\js\目录下新建mirror.js文件,记得修改对应域名为你自己的:
在[Blogroot]\_config.butterfly.yml中引入mirror.js
修改文件
如果使用了gulp对静态资源进行压缩,由于gulp-babel的加密压缩算法问题,可能造成部署到线上以后右键菜单不显示的bug。
最新版本中已经将galmenu.js替换为CDN引入,无需担心此bug。
右键菜单无法显示,控制台报错。Butterfly_v3.4.0+galmenu.jsjquery
jquery[Blogroot]\_config.butterfly.yml
inject:
head:
bottom:
- <script src="https://cdn.jsdelivr.net/npm/jquery@latest/dist/jquery.min.js"></script>/mirror/链接访问。