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.
5.0.0 - 2025-08-02
- Rename the attribute
forof the navitation element todata-target. - Merged
src/carousel.jsandsrc/navigation.jsinto a single filecarousel.jsin the root of the repo.
Playerclass
4.2.0 - 2022-05-13
- New
Navigationcustom element, to show next/prev buttons.
4.1.0 - 2021-01-08
- Automatic anchor navigation if the children have ids
- Keep the current slide position on resize
4.0.0 - 2019-08-09
- New functions
next()andprev()to move the scroll using percentages instead indexes
- Removed the javascript polyfill for scroll snap
- Changed the index detection in order to be more intuitive
3.0.0 - 2018-07-27
- Decoupled
CarouselandPlayermodules. - Use native custom elements to build the component.
- Removed
settings.scrollBehaviorand replaced withscrollBehavior. - API Change: Removed
goto()method and replaced withindexproperty, that only accept integers. - API Change: Removed
scrollIsAtBeginning()andscrollIsAtTheEnd()methods and replaced withscrollFromLeftandscrollFromRightproperties.
- Improved
package.jsonadding themodules.rootentry.
2.0.0 - 2018-06-16
- Allow to customize the scroll behavior using
settings.scrollBehavior - Browser tests
- Renamed extensions from
.jsmto.jsdueContent-Typeheader issues - The
package.jsonis now more browser-friendly usingbrowserandfileskeys
- Webpack & babel tools. This package should work as native ES6 modules. Progressive enhancement strategy should fallback to css and html for old browsers.
- Moved
smoothscroll-polyfilldependency to devDependencies - Improved current slide calculation
1.0.0 - 2018-05-01
- Added ability to move the carousel using percentages (ex:
carousel.goto("+100%")) - New function
scrollIsAtTheBeginning()that returns whether the carousel scroll is at the beginning or not. - New function
scrollIsAtTheEnd()that returns whether the carousel scroll is at the end or not. - Use
console.infoto display accesibility issues.
- Rename package to
@oom/carousel - The current slide is centered instead aligned to left
- Updated dev dependencies to the latest version
- Changed the file extension to
jsmfor compatibility with native es6 modules
0.8.1 - 2017-12-02
- Fixed an exception if a slide is undefined
- Fixed css snap points when it's supported but the value is "none"
0.8.0 - 2017-12-02
- Keyboard support
- Renamed the project to
pw-carousel(insteadpw-carrousel)
- Removed dependency of
d_js. You can install it for yourself or use other dom4 polyfill to have support for old browsers
- Improved snapping
0.7.0 - 2017-11-27
- Improved the html using some recomendations from https://inclusive-components.design/a-content-slider/
- Simplified the html structure. The carrousel uses only a simply
<ul>element. - Fake snap will be used if css scroll snap points are not detected/supported
- Fixed progressive enharcement in IE9
- Removed all options (
snapandindex). - Removed unused dependency PEP
0.6.0 - 2017-11-20
- New
snapoption.
- Removed the
hideScrollElementoption.
0.5.1 - 2017-11-18
mainvalue inpackage.jsonwas wrong
0.5.0 - 2017-11-18
- Switch approach from a transform/translate to a scroll based carrousel
move()was renamed togoto()
- ES2015 dist version has been removed. From now, this library is ES6 only. You must use Babel or other transpiler for old browsers compatibility.
- Removed drag support and use just native scroll.
.play()and.pause()was removed. Use the property.playerto access to the player instance.- Removed
.destroy() - Removed the option
fitToLimitsbecause it makes no sense using native scroll - Removed the option
offset. It may be reintroduced in a future.
0.4.1 - 2017-08-05
- Upgraded
d_jsto 2.0.
0.4.0 - 2017-07-22
- New method
.destroy(), to unbind all events.
- Fixed bug on disable drag
0.3.7 - 2017-07-08
- Fixed bug that makes some links non clicable
0.3.6 - 2017-07-06
- Improved drag detection
- Fixed links that are non clicable in firefox for android
0.3.5 - 2017-06-18
- Fixed link clicks in firefox for android
0.3.4 - 2017-06-17
- Prevent default events on dragging
0.3.3 - 2017-06-11
- Fixed the configuration of babel on publish the package
0.3.2 - 2017-06-11
- Replaced unidragger dependency with standard Pointer events, using jquery PEP as polyfill
0.3.1 - 2017-06-06
- Fixed undefined method error
0.3.0 - 2017-06-05
- New method
drag()to enable/disable dragging
0.2.0 - 2017-06-04
- New method
refresh()to refresh the tray position to snap the sliders.
0.1.1 - 2017-06-04
- Fixed urls in
package.json
0.1.0 - 2017-06-04
First version with basic features