web
20 小时以前 49fa0d82a40345342966e810b44429aec0480ef3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
// @ts-nocheck
// 是否支持被动事件监听
export const supportsPassive = true;
 
// #ifdef  uniVersion < 4.25
// 请求动画帧
export function raf(fn: TimerCallback): number {
   return setTimeout(fn, 1000 / 60); 
}
 
// 取消动画帧
export function cancelRaf(id: number) {
  clearTimeout(id);
}
 
 
// 双倍动画帧
export function doubleRaf(fn: TimerCallback): void {
  raf(():number => raf(fn)); // 在下一帧回调中再次请求动画帧,实现双倍动画帧效果
}
// #endif
 
 
// #ifdef  uniVersion >= 4.25
// 请求动画帧
export function raf(fn: UniAnimationFrameCallback): number
export function raf(fn: UniAnimationFrameCallbackWithNoArgument): number
export function raf(fn: any): number {
    if(typeof fn == 'UniAnimationFrameCallback') {
        return requestAnimationFrame(fn as UniAnimationFrameCallback); 
    } else {
        return requestAnimationFrame(fn as UniAnimationFrameCallbackWithNoArgument); 
    }
}
 
// 取消动画帧
export function cancelRaf(id: number) {
  cancelAnimationFrame(id);
}
 
// 双倍动画帧
export function doubleRaf(fn: UniAnimationFrameCallback): void 
export function doubleRaf(fn: UniAnimationFrameCallbackWithNoArgument): void 
export function doubleRaf(fn: any): void {
  raf(():number => raf(fn)); // 在下一帧回调中再次请求动画帧,实现双倍动画帧效果
}
// #endif