Skip to content

Loadgo v3.1.0

Choose a tag to compare

@franverona franverona released this 25 Mar 10:13
· 36 commits to main since this release

New features

  • onProgress callback option — fires on every setprogress call with the current value (0–100)
  • animationDuration option (default 0.6) and animationEasing option (default 'ease') — animation timing is no
    longer hardcoded
  • ARIA accessibility: overlay (or img in filter mode) automatically gets role="progressbar", aria-valuemin,
    aria-valuemax, and aria-valuenow kept in sync; configurable via new ariaLabel option (default 'Loading')
  • TypeScript declarations for both vanilla (LoadgoOptions, LoadgoAPI) and jQuery (typed loadgo() overloads) — no
    @types/* needed

Bug fixes

  • Memory leak: window resize listener was never removed; it is now properly cleaned up on destroy()
  • destroy() in filter mode now removes ARIA attributes it added to the image
  • Vendor prefix -webkit-filter replaced with standard filter throughout

Improvements

  • Resize handler throttled via requestAnimationFrame (~60 fps cap) and transition is stripped during resize then
    restored 150 ms after the last resize event, preventing janky animations
  • extend() in the vanilla build now uses Object.assign instead of JSON.parse/JSON.stringify, correctly handling
    function values (e.g. resize, onProgress)
  • Added CONTRIBUTING.md with dev setup, build, test, lint, commit, and release instructions

Tests

  • 44 new tests added (136 total, up from 92) covering re-initialization, loop/stop in filter mode, resize listener
    cleanup, ARIA attributes, onProgress, and custom animation timing