magnetic-hover.js
Version:
Lightweight magnetic text hover effect animation library
41 lines (37 loc) • 1.18 kB
TypeScript
declare class MagneticHover {
constructor(selector: string | Element, options?: MagneticHoverOptions);
start(): void;
stop(): void;
restart(): void;
updateOptions(newOptions: Partial<MagneticHoverOptions>): void;
destroy(): void;
static readonly version: string;
}
interface MagneticHoverOptions {
/** Maximum X scale factor (stretch) */
maxScaleX?: number;
/** Minimum X scale factor */
minScaleX?: number;
/** Maximum Y scale factor (normal height) */
maxScaleY?: number;
/** Minimum Y scale factor (compress) */
minScaleY?: number;
/** Maximum text stroke width (em) */
maxStroke?: number;
/** Minimum text stroke width (em) */
minStroke?: number;
/** Maximum padding-inline (em) */
maxPaddingInline?: number;
/** Minimum padding-inline (em) */
minPaddingInline?: number;
/** Effect radius (pixels) */
effectRadius?: number;
/** Smoothing factor (0-1) */
smoothing?: number;
/** Character class name */
charClassName?: string;
/** Throttle delay (milliseconds) */
throttleDelay?: number;
}
export = MagneticHover;
export as namespace MagneticHover;