Files
2026-01-05 12:47:14 +08:00

31 lines
615 B
TypeScript

const _window = window as any
export const inBrowser = typeof window !== 'undefined'
function requestAniFrame() {
if (typeof _window !== 'undefined') {
return (
_window.requestAnimationFrame
|| _window.webkitRequestAnimationFrame
|| function (callback: () => void) {
_window.setTimeout(callback, 1000 / 60)
}
)
}
else {
return function (callback: () => void) {
setTimeout(callback, 1000 / 60)
}
}
}
export function cancelRaf(id: number) {
if (inBrowser)
cancelAnimationFrame(id)
else
clearTimeout(id)
}
export default requestAniFrame()