You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							42 lines
						
					
					
						
							960 B
						
					
					
				
			
		
		
	
	
							42 lines
						
					
					
						
							960 B
						
					
					
				| (function (global, factory) { | |
|   typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : | |
|   typeof define === 'function' && define.amd ? define(factory) : | |
|   (global = global || self, global.rafSchd = factory()); | |
| }(this, function () { 'use strict'; | |
| 
 | |
|   var rafSchd = function rafSchd(fn) { | |
|     var lastArgs = []; | |
|     var frameId = null; | |
| 
 | |
|     var wrapperFn = function wrapperFn() { | |
|       for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { | |
|         args[_key] = arguments[_key]; | |
|       } | |
| 
 | |
|       lastArgs = args; | |
| 
 | |
|       if (frameId) { | |
|         return; | |
|       } | |
| 
 | |
|       frameId = requestAnimationFrame(function () { | |
|         frameId = null; | |
|         fn.apply(void 0, lastArgs); | |
|       }); | |
|     }; | |
| 
 | |
|     wrapperFn.cancel = function () { | |
|       if (!frameId) { | |
|         return; | |
|       } | |
| 
 | |
|       cancelAnimationFrame(frameId); | |
|       frameId = null; | |
|     }; | |
| 
 | |
|     return wrapperFn; | |
|   }; | |
| 
 | |
|   return rafSchd; | |
| 
 | |
| }));
 | |
| 
 |