1
0
Fork 0
mirror of https://github.com/documize/community.git synced 2025-07-19 05:09:42 +02:00

Improve jump-to-section scrolling

This commit is contained in:
McMatts 2019-11-08 12:45:22 +00:00
parent 7ae801554d
commit 60ef205948
2 changed files with 11 additions and 10 deletions

View file

@ -45,12 +45,12 @@ export default Component.extend(Notifier, {
didInsertElement() { didInsertElement() {
this._super(...arguments); this._super(...arguments);
this.jumpToSection(this.get('currentPageId'));
}, },
didRender() { didRender() {
this._super(...arguments); this._super(...arguments);
this.jumpToSection(this.get('currentPageId'));
this.contentLinkHandler(); this.contentLinkHandler();
}, },

View file

@ -11,7 +11,6 @@
import $ from 'jquery'; import $ from 'jquery';
import Service, { inject as service } from '@ember/service'; import Service, { inject as service } from '@ember/service';
import { schedule } from '@ember/runloop';
export default Service.extend({ export default Service.extend({
sessionService: service('session'), sessionService: service('session'),
@ -42,15 +41,17 @@ export default Service.extend({
}, },
scrollTo(id) { scrollTo(id) {
schedule('afterRender', () => { let elem = $(id).offset();
let elem = $(id).offset(); if (_.isUndefined(elem)) return;
if (_.isUndefined(elem)) return;
$('html, body').animate({ $('html, body').animate({
scrollTop: elem.top scrollTop: elem.top
}, 250); }, 250);
}); },
},
waitScrollTo(id) {
setTimeout(() => { this.scrollTo(id); }, 1000);
},
downloadFile(content, filename) { downloadFile(content, filename) {
let b = new Blob([content], { type: 'text/html' }); let b = new Blob([content], { type: 'text/html' });