hexo插入live2d
2019-02-24
用
内嵌
2019-02-24
重要更新
其他人写的代码还不如自己整的,详细github
位置说明
注意不要重复使用一个API
文件位置
保证能用
- fghrsh:
//live2d-cdn.fghrsh.net/assets/1.4.2/$file - zhangshuqiao:
https://cdn.jsdelivr.net/gh/stevenjoezhang/live2d-widget/$file - jsdelivr加载github:
https://cdn.jsdelivr.net/gh/NiaBie/live2d_lazy@version/$file - jquery和font-awesome什么的自己找
基本不能用
- hexo加载(默认是在
source/里面):https://niabie.github.io/$dir/$file - github原码:
https://raw.githubusercontent.com/NiaBie/live2d_lazy/master/$file
hexo的样式文件
blog/themes/next/layout/_layout.swig:
<head>最后一行:
{% include '_third-party/live2d_head' %} |
<body>最后一行:
{% include '_third-party/live2d_body' %} |
添加文件请直接修改这两个文件,注意html注释(不要嵌套<!-- -->)!
使用xiazeyu的hexo-live2d-widget.js
安装
按照EYHN的手册用npm安装插件和模型
添加模型
手动下载zip,解压到~/node_modules/:
~/node_modules/${foldername}/--+--package.json |
${foldername}随意,在blog/_config.yml中调用的模型名字为${foldername}package.json可以只留一对大括号assert/文件夹必须要有- 注意模型的
json文件后缀名为model.json,前缀名字随意 - 其余部分的命名都随意
package-lock.json可不要
zhangshuqiao的live2d-widget
启用
<head>:
<script src="$path/jquery.min.js"></script><link rel="stylesheet" href="$path/font-awesome.min.css"/>
<body>:
<script src="$path/autoload.js"></script>
记得修改autoload.js中的github版本(安全的版本:1.0.7),其会调用:
live2d.min.jswaifu-tips.jswaifu-tips.json
由于作者没有提供修改大小的api,所以只能直接在js里面调,建议设置:
<div id="waifu"> |
fghrsh的live2d-demo和live2d-api
直接使用示例网站的api
用autoload.js加载
<head>:
<script src="$pathto/jquery.min.js"></script>
<body>:
<script src="$pathto/autoload.js"></script>
记得修改autoload.js中的github版本(安全的版本:3.0.2),其会调用:
waifu.min.csswaifu-tips.jsonlive2d.min.js
直接向autoload中的function()增加参数,不需要使用waifu-tips.js
拖动效果需要另外的js,放在<head>或<body>(推荐)都可:
<script src="$pathto/jquery-ui.min.js"></script>
注意需要:
flat-ui-icons-regular.eotflat-ui-icons-regular.svgflat-ui-icons-regular.ttfflat-ui-icons-regular.woff
修改不同模型的位置
- 修改
waifu-tips.js
loadlive2d('live2d', live2d_settings.modelAPI + 'get/?id=' + modelId + '-' + modelTexturesId, (live2d_settings.showF12Status ? console.log('[Status]', 'live2d', '模型', modelId + '-' + modelTexturesId, '加载完成') : null)); |
通过在每次加载模型后,在<body>尾部创建/搜索一个没用的模型,将live2d的数据赋值给这个<style>
- 增加
third_party/my_js/live2d.swig
<script> |
start函数是便于其他地方调用以及延迟效果使用(因为有可能页面加载后live2d还没加载好,所以需要重复执行,且这个时间很难估计)
third_party/my_js/main.swig
<script> |
这部分包含了hexo其他部分的js,会随时间而过时
内嵌autoload.js和waifu-tips.js
还没调好,不能用
<head>加waifu.min.css/waifu.css,css文件好像一定得静态存放
<body>加jquery.min.js,jquery-ui.min.js,waifu-tips.min.js,live2d.min.js
<div class="waifu-tips"></div> |