君子不玩物丧志,亦常以借物调心,网站集成二次元网页小组件(widget)石蒜模拟器,聊以赏玩

君子不玩物丧志,亦常以借物调心,网站集成二次元网页小组件(widget)石蒜模拟器,聊以赏玩

    传世经典《菜根谭》中有言曰:“徜徉于山林泉石之间,而尘心渐息;夷犹于诗书图画之内,而俗气潜消。故君子虽不玩物丧志,亦常借物调心。”意思是,徜徉在林泉山石之间,能够摒弃杂念,留意诗词歌画之中,可以尽弃俗见。所以说君子虽然不会玩物丧志,也常常要借一些优雅的小物件来调理情绪,二次元网页小组件(widget)就是这样的小物件,功能上无甚大观,却可以博君一晒。

    引入方式

    根据官方文档:https://github.com/dsrkafuu/sakana-widget ,引入方式分为两种,分别是模板引入:

<div id="sakana-widget"></div>
<script>
function initSakanaWidget() {
new SakanaWidget().mount('#sakana-widget');
}
</script>
<script
async
onload="initSakanaWidget()"
src="https://cdn.jsdelivr.net/npm/sakana-widget@2.3.1/lib/sakana.min.js"
></script>

    这里需要声明一个div容器,随后通过async异步方式引入站外cdn组件库sakana.min.js,随后通过initSakanaWidget方法将其挂载到div容器上。

    或者通过 NPM 包的形式安装:

npm install --save sakana-widget

    随后在组件内引入:

import SakanaWidget from 'sakana-widget';
new SakanaWidget().mount('#sakana-widget');

    本包内默认导出一个类 SakanaWidget,通过该类可以初始化一个小组件。这里初始化了一个默认设置的组件,同样将其挂载到div容器上。

    定制化

    默认设置的组件一律千篇,我们可以对其进行定制化操作:

<div id="sakana-widget" style="position:fixed;right:0px;bottom:0px;"></div>
<script>
function initSakanaWidget() {
const takina = SakanaWidget.getCharacter('takina');
takina.initialState = {
...takina.initialState,
i: 0.001,
d: 1,
autoFit:true,

};
SakanaWidget.registerCharacter('takina-slow', takina);
}
</script>
<script
async
onload="initSakanaWidget()"
src="https://cdn.jsdelivr.net/npm/sakana-widget@2.3.1/lib/sakana.min.js"
></script>

    这里首先将div容器通过固定定位(position:fixed)设置到屏幕右下角,固定定位非常有辨识度,那就是无论页面有多长,滚动条怎么滚动,固定的容器都相对于浏览器窗口是静止的,脱离了整个文档流的限制,漂浮在右下角,岿然不动。

    随后通过getCharacter静态方法获取内置的角色对象,修改参数,并创建一个超慢速无阻尼 (永续) 的泷奈作为新角色,接着通过registerCharacter方法将角色对象注册到组件中。

    这里i和d参数分别代表惯性和角度,其他类型参数如下:

export interface SakanaWidgetState {
/**
* 惯性
*/
i: number;
/**
* 粘性
*/
s: number;
/**
* 衰减
*/
d: number;
/**
* 角度
*/
r: number;
/**
* 高度
*/
y: number;
/**
* 垂直速度
*/
t: number;
/**
* 水平速度
*/
w: number;
}

export interface SakanaWidgetCharacter {
image: string;
initialState: SakanaWidgetState;
}

    组件实例构造参数:

export interface SakanaWidgetOptions {
/**
* 组件大小,默认 `200`
*/
size?: number;
/**
* 自动适应容器大小 (最小 120px),默认 `false`
*/
autoFit?: boolean;
/**
* 角色,默认 `chisato`
*/
character?: 'chisato' | 'takina';
/**
* 控制栏,默认 `true`
*/
controls?: boolean;
/**
* canvas 线条设置,默认 `#b4b4b4` & `10`
*/
stroke?: {
color?: string;
width?: number;
};
/**
* 停止动画的阈值,默认 `0.1`
*/
threshold?: number;
/**
* 旋转角度,默认 `0`
*/
rotate?: number;
}

    效果如图所示:

    

    除了内置角色,我们也可以自己更换角色的皮肤:

<div id="sakana-widget" style="position:fixed;right:0px;bottom:0px;"></div>
<script>
function initSakanaWidget() {


const demo = SakanaWidget.getCharacter('chisato');
demo.initialState = {
...demo.initialState,
i: 0.001,
d: 1,
autoFit:true,

};
demo.image = `https://p3-passport.byteimg.com/img/user-avatar/f2190ea080335c49be09e4072617ea89~100x100.awebp`;
SakanaWidget.registerCharacter('demo', demo);
new SakanaWidget({ character: 'demo' }).mount('#sakana-widget');
}
</script>
<script
async
onload="initSakanaWidget()"
src="https://cdn.jsdelivr.net/npm/sakana-widget@2.3.1/lib/sakana.min.js"
></script>

    这里以本站logo为例,通过设置image属性来进行角色皮肤的替换,图像类型不限:

    除了在线图片地址,也支持base64的图片编码形式。

    首先通过Golang脚本获取实体图片的base64编码:

package main

import (
"encoding/base64"
"fmt"
"io/ioutil"
"log"
)

func main() {
srcByte, err := ioutil.ReadFile(`/Users/liuyue/logo_pink.png`)
if err != nil {
log.Fatal(err)
}

res := base64.StdEncoding.EncodeToString(srcByte)

fmt.Println(res)
}

    程序返回:

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ECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyg0DECIiIiIiyk0IoAdAPYABHnYiIiIiIrpE6gH0/H/aWz1fsxsaNQAAAABJRU5ErkJggg==

    随后将图片编码设置在image属性中:

<div id="sakana-widget" style="position:fixed;right:0px;bottom:0px;"></div>
<script>
function initSakanaWidget() {

const demo = SakanaWidget.getCharacter('chisato');
demo.initialState = {
...demo.initialState,
i: 0.001,
d: 1,
autoFit:true,

};
demo.image = `data:image/png;base64,图片编码`;
SakanaWidget.registerCharacter('demo', demo);
new SakanaWidget({ character: 'demo' }).mount('#sakana-widget');
}
</script>
<script
async
onload="initSakanaWidget()"
src="https://cdn.jsdelivr.net/npm/sakana-widget@2.3.1/lib/sakana.min.js"
></script>

    这里注意图片头部需要声明图片后缀以及编码:data:image/png;base64,

    功能优化

    官方版本在默认情况下会触发一个异常:

Links do not have a discernible name

    简单理解就是挂件中的Github链接没有一个浏览器可以辨认的描述符,从而让这个超链接变得可疑。

    我们可以针对这个节点元素人为地为其加上标签描述符:

$(".sakana-widget-ctrl a").attr("aria-label","Github");

    与此同时,如果不希望链接直接跳转官方的Github首页,也可以人为地更改其地址:

$(".sakana-widget-ctrl a").attr("href","//github.com/zcxey2911");

    性能优化

    通常情况下,这一类特效挂件都会增加一些带宽成本,为了不影响首屏响应速度,我们可以采取异步的加载方式:

<script
async
onload="initSakanaWidget()"
src="https://cdn.jsdelivr.net/npm/sakana-widget@2.3.1/lib/sakana.min.js"
></script>

    但事实上,script标签存在两个属性,defer和async,加上两个属性之后,在js真正执行之前都不会阻止html的加载。

    因此script标签的使用分为几种不同的情况:没有defer或async属性,浏览器会立即加载并执行相应的脚本。也就是说在渲染script标签之后的文档之前,不等待后续加载的文档元素,读到就开始加载和执行,此举会阻塞后续文档的加载;有了async属性,表示后续文档的加载和渲染与js脚本的加载和执行是并行进行的,即异步执行;有了defer属性,加载后续文档的过程和js脚本的加载(此时仅加载不执行)是并行进行的(异步),js脚本的执行需要等到文档所有元素解析完成之后,DOMContentLoaded事件触发执行之前。

    defer和async在网络加载过程是一致的,都是异步执行的,二者的区别在于脚本加载完成之后何时执行,可以看出defer更符合大多数场景对应用脚本加载和执行的要求:

<script
defer
onload="initSakanaWidget()"
src="https://cdn.jsdelivr.net/npm/sakana-widget@2.3.1/lib/sakana.min.js"
></script>

    结语

    香令人幽,酒令人远,石令人隽,琴令人寂,得一挂件,清赏把玩,足以借境调心。