소스 검색

fixed requestAnimationFrame implementation

Gildas 7 년 전
부모
커밋
673fabdb79
1개의 변경된 파일4개의 추가작업 그리고 3개의 파일을 삭제
  1. 4 3
      lib/hooks/hooks-frame.js

+ 4 - 3
lib/hooks/hooks-frame.js

@@ -144,19 +144,20 @@ this.hooksFrame = this.hooksFrame || (() => {
 			if (loadDeferredImages) {
 				return setTimeout(callback, 0);
 			} else {
-				const id = requestAnimationFrame(() => {
+				const id = requestAnimationFrame(timestamp => {
 					pendingRequestAnimationFrameCalls.delete(id);
-					callback();
+					callback(timestamp);
 				});
 				pendingRequestAnimationFrameCalls.set(id, callback);
+				return id;
 			}
 		};
 
 		window.cancelAnimationFrame = function (id) {
+			pendingRequestAnimationFrameCalls.delete(id);
 			if (loadDeferredImages) {
 				return clearTimeout(id);
 			} else {
-				pendingRequestAnimationFrameCalls.delete(id);
 				return cancelAnimationFrame(id);
 			}
 		};