UNPKG

drift-zoom

Version:

Easily add "zoom on hover" functionality to your site's images. Lightweight, no-dependency JavaScript.

47 lines (37 loc) 887 B
/* eslint-disable */ // http://underscorejs.org/docs/underscore.html#section-83 export default function debounce(func, wait, immediate) { let timeout; let args; let context; let timestamp; let result; const later = function() { const last = Date.now() - timestamp; if (last < wait && last >= 0) { timeout = setTimeout(later, wait - last); } else { timeout = null; if (!immediate) { result = func.apply(context, args); if (!timeout) { context = args = null; } } } }; return function() { context = this; args = arguments; timestamp = Date.now(); const callNow = immediate && !timeout; if (!timeout) { timeout = setTimeout(later, wait); } if (callNow) { result = func.apply(context, args); context = args = null; } return result; }; }