diff --git a/components/ionNavBackButton/ionNavBackButton.js b/components/ionNavBackButton/ionNavBackButton.js index 4615cbb..5ea73d6 100644 --- a/components/ionNavBackButton/ionNavBackButton.js +++ b/components/ionNavBackButton/ionNavBackButton.js @@ -1,3 +1,9 @@ +IonScrollPositions = {}; + +Router.onStop(function () { + IonScrollPositions[Router.current().route.getName()] = $('.overflow-scroll').scrollTop(); +}); + Template.ionNavBackButton.events({ 'click': function (event, template) { $('[data-nav-container]').addClass('nav-view-direction-back'); diff --git a/components/ionView/ionView.js b/components/ionView/ionView.js index 33408c7..c4fb182 100644 --- a/components/ionView/ionView.js +++ b/components/ionView/ionView.js @@ -1,6 +1,13 @@ Template.ionView.rendered = function () { // Reset our transition preference IonNavigation.skipTransitions = false; + + // Reset our scroll position + var routeName = Router.current().route.getName(); + if(IonScrollPositions[routeName]) { + $('.overflow-scroll').scrollTop(IonScrollPositions[routeName]); + delete IonScrollPositions[routeName]; + } }; Template.ionView.helpers({ diff --git a/package.js b/package.js index 31f11f7..3dc7181 100644 --- a/package.js +++ b/package.js @@ -7,7 +7,7 @@ Package.describe({ Package.onUse(function(api) { api.versionsFrom("1.0"); - api.use(["templating", "underscore", "fastclick"], "client"); + api.use(["templating", "underscore", "fastclick", "iron:router"], "client"); api.addFiles([ "vendor/snap.js",