配置

光标类型

cursors 是 AnimeCursor 的核心配置项。每一个 key 表示一种光标类型,对应一个 CSS class
cursor-${type},由 AnimeCursor 自动生成)。光标类型的名称完全由你来决定,只要符合 JavaScript 的标准,任何名称都不会影响效果。

cursors: {
    default: { ... },
    pointer: { ... },
    text: { ... },
    cursorForFun: { ... }
}

要让这些光标真正起效,你还需要对它们进行基础的参数配置,以告诉 AnimeCursor 你希望这些光标以什么样的效果呈现。

参数选项

所有光标参数

下面的表格列出了 AnimeCursor 为光标预留的所有参数选项,可以用来快速参考,对于每个参数更详细的介绍请见下文。

选项 类型 必填项 选项介绍 留空时的行为
size [number, number] 光标尺寸[宽,高](像素) 报错
image string 光标图片路径 报错
tags string[ ] 生效的 HTML 标签 AnimeCursor 只会在被手动设置了 data-cursor 的元素上时才会切换到该光标
default boolean ⚠️ 光标是否是默认光标
⚠️最多只能设置一个默认光标
与设置该项为 false 相同
frames number 精灵图动画帧数 光标不会生成精灵图动画
duration number 精灵图动画循环时长 光标不会生成精灵图动画
pingpong boolean 精灵图动画是否乒乓循环 精灵图动画将以默认方式循环
offset [number, number] 光标偏移[向右,向下](像素) 光标指针位置默认左上角
scale [number, number] 光标缩放倍数[横向,纵向] 光标保持 size 设定尺寸
pixel boolean 是否启用像素渲染(pixelated) 原尺寸像素图平滑边缘
zindex number 为光标单独设置层级(<body>层面) 默认设置为最大层级-1

参数介绍

全局选项

除了光标本身之外,AnimeCursor 还提供了少量与 cursors 同级的全局选项:

什么是全局选项

选项类型默认值选项介绍
debugbooleanfalse启用debug覆盖
displayOnLoadbooleanfalse控制光标在检测到鼠标移动前是否显示
enableTouchbooleanfalse是否在触屏设备启用

全局选项介绍

如何设置全局选项

由于全局选项与光标类型同级,所以设置全局参数时需要注意代码格式:

✅合法的格式:

new AnimeCursor({
    debug: true, // 与cursors同级,格式正确
    enableTouch: false, // 与cursors同级,格式正确
    cursors: {
        default: {
            size: [32,32],
            image: 'i/cursor/cursor_default.gif',
            pixel: true,
            default: true
        },
    }
});

一个设置了全局选项的 AnimeCursor 初始化应该看起来像上面的例子。

❌非法的格式:

new AnimeCursor({
    cursors: {
        debug: true, // 包裹进了cursors内,位置错误
        default: {
            size: [32,32],
            image: 'i/cursor/cursor_default.gif',
            pixel: true,
            default: true,
            enableTouch: false // 包裹进了光标设置内,位置错误
        },
    }
});

而这上面是一个错误示范,注意 debugenableTouch 在代码中的位置和注释文本。