Skip to content

Instantly share code, notes, and snippets.

@burnjohn
Last active November 3, 2019 18:44
Show Gist options
  • Save burnjohn/fd900f71ad5ca8c02593c738785d2652 to your computer and use it in GitHub Desktop.
Save burnjohn/fd900f71ad5ca8c02593c738785d2652 to your computer and use it in GitHub Desktop.
// example for scroll instances caching es6
const scrollInstancesMap = new Map();
const scrollContainer = document.querySelector('.frontpage-content__container');
const currentScroller = scrollInstancesMap.get(scrollContainer);
if (currentScroller) {
currentScroller.scrollToElement(someElement)
} else {
const scroller = new ScrollLibrary(scrollContainer);
scrollInstancesMap.set(scrollContainer, scroller);
oldScroller.scrollToElement(someElement)
}
// example for scroll instances caching es5
var scrollContainerNames = [];
var scrollInstances = [];
var oldScrollerIndex = scrollContainerNames.findIndex( scrollContainerEl => scrollContainerEl === scrollContainer );
if (oldScrollerIndex) {
const oldScroller = scrollInstances[oldScrollerIndex];
oldScroller.scrollToElement(someElement)
} else {
var scroller = new ScrollLibrary(scrollContainer);
scrollContainerNames.push(scrollContainer);
scrollInstances.push(scroller);
scroller.scrollToElement(someElement)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment