All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
4.1.2 - 2024-07-19
- Removed some dead code left over from version 3.x.
4.1.1 - 2021-09-01
- Set package type to
module
to better support native ES module imports. - Improved website design.
4.1.0 - 2019-10-22
spinner-line-shrink
animation preset.
4.0.0 - 2018-05-06
- Switched from
requestAnimationFrame
back to CSS keyframe animations for better performance. - In order to preserve compatibility with the
style-src 'self';
Content Security Policy, animations are now defined via an external CSS file rather than inserted dynamically.
Add the following to your page to use one of the preset animations:
<link rel="stylesheet" href="node_modules/spin.js/spin.css"/>
You can also define custom opacity animations in your own CSS file and
select them via the animation
option.
- A transparent shadow is now set by default to resolve aliased lines in certain browsers (issue #355).
opacity
andtrail
options (define a custom opacity animation instead).- Support for Internet Explorer 9 (it doesn't support keyframe animations).
fps
option (only used for IE 9).
3.1.0 - 2017-11-26
- Support for custom box-shadows with corrected positioning (issue #35).
fadeColor
option to customize the color that lines fade to (issue #30).
3.0.0 - 2017-11-09
- Support for Content Security Policy
style-src 'self';
option (issue #115 and issue #229). - CONTRIBUTING.md file.
- Rewritten in TypeScript.
- Replaced dynamic CSS keyframe animations with
requestAnimationFrame
. - Unified animation logic in all browsers.
- Moved internal functions out of Spinner instance.
- Website now uses native range inputs rather than a polyfill, and doesn't depend on jQuery.
- Distributed as a standard ES6 module (closes #341).
- Janky animation appearance in Microsoft Edge (issue #342).
- Missing line with trail set to 100 in Internet Explorer (issue #327).
- Spinner is not defined error in Angular (issue #340).
- Useless
hwaccel
option. - IE 6-8 support and VML fallback since it isn't needed for IE 9+.
- Minified files from bundle.
- jQuery plugin (closes #325).
- Bower/composer/component/spm support. Install from npm instead (recommended), or save spin.js file in your repo.
Note: version 3.0 does not change the public Spinner API, so if you are already using a module bundler such as Webpack or Rollup, upgrading should be as easy as adding the following ES6 module import:
import {Spinner} from 'spin.js';
2.3.2 - 2015-07-24
- Updated UMD header to protect against HTMLElement global pollution (PR #300).
2.3.1 - 2015-06-15
- There were multiple tagging issues that produced 2.1.3, 2.2.0, and 2.3.0. In the spirit of SemVer, this release is now 2.3.1.
- The minified spin.min.js is now distributed in the repo, making Bower usage easier (issue #250).
- Incorrect syntax in the example at the top of spin.js (PR #294).
- Moot
version
property from Bower manifest (PR #295).
2.1.2 - 2015-05-28
- Version 2.1.1 had a packaging error, so this release is now 2.1.2.
- Standard CSS attributes are now preferred over vendor ones if supported.
- Unified internal coding style across all files.
- Website now uses the latest version of jQuery from its 1.x branch.
- Updated documentation to note that the container element must use relative positioning (issue #292).
- spm support (PR #232).
- All broken examples
- Bug on demo page where the direction setting wasn't reflected in the option object.
2.1.0 - 2015-04-16
scale
option for resizing the spinner (PR #287).- Support for importing on server without DOM (PR #283).
2.0.2 - 2015-01-02
- Use correct
require
call in jQuery plugin
- Cleaned up unused code
2.0.1 - 2014-04-24
- Position offsets are now applied when instantiating spinner without a target (issue #218).
2.0.0 - 2014-03-13
- Spinner is now absolutely positioned at
top: 50%, left: 50%
by default. top
andleft
options now require CSS units. For example,top: 100
must instead be written astop: '100px'
.- Spinner must now always be invoked as constructor.
1.3.3 - 2013-12-24
- Created master branch and Grunt-based build process (issue #189).
1.3.2 - 2013-08-26
- SyntaxError in Chrome Canary (issue #168).
1.3.1 - 2013-08-19
- Support for multi-colored spinners (PR #167).
1.3.0 - 2013-04-02
direction
option to control the spinning direction (PR #126).- jQuery plugin
- Implemented UMD pattern to support AMD and CommonJS module loaders
- Use strict mode
1.2.8 - 2013-02-07
- 'Spinner' is undefined error in Internet Explorer 7 and 8 (issue #78).
1.2.7 - 2012-10-02
position
option to control the corresponding CSS property (issue #98).- Trailing semicolon to support concatenation tools that don't know about ASI (issue #96 and issue #99).
1.2.6 - 2012-08-30
corners
option to control the border-radius (issue #93).
- Scroll bar appearing in wide target elements (issue #74).
- Invalid Argument error in Internet Explorer (issue #77).
- Broken spinner in Opera 12 (issue #87).
- Unexpected positioning when specifying
top
andleft
options as a string (issue #81 and issue #90).
1.2.5 - 2012-03-22
rotate
option (issue #60).
- Bug that prevented the VML from being displayed when Modernizr's html5shiv was used (issue #58).
- The
constructor
property is now preserved (issue #61).
1.2.4 - 2012-02-28
- New config options:
top
,left
,zIndex
, andclassName
.
1.2.3 - 2012-01-30
- Disabled hardware acceleration by default to prevent disappearing objects and flashing colors in Chrome and Safari (issue #41 and issue #47).
1.2.2 - 2011-11-08
- Cross-domain issue with the dynamically created stylesheet (issue #36).
1.2.1 - 2011-10-05
- Error when loading spinner in Internet Explorer 9 (issue #31).
1.2.0 - 2011-09-16
- Calling
spin()
now invokesstop()
first (issue #28). - The
new
operator is now optional (issue #14). - Improved accessibility by adding
role="progressbar"
.
- Implemented workaround for negative margin bug in Internet Explorer (issue #27).
1.1.0 - 2011-09-06
- Optimized the code for gzip compression. While the minified version got slightly larger, the zipped version now only weighs 1.7K.
- Animation occasionally got out of sync in mobile Safari and Android's built-in WebKit (issue #12).
- Spinner was misplaced when the target element had a non-zero padding (issue #23).
1.0.0 - 2011-08-16
- Initial release