Browse Source
fix: change nextTick to onload for anchor scrolling (#1870)
* change nextTick to onload for anchor scrolling
* fix: handle anchor scrollTo if page already loaded
Co-authored-by: Nicolas Giard <github@ngpixel.com>
pull/1871/head
Seyed Sajad Kahani
5 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with
11 additions and
3 deletions
-
client/themes/default/components/page.vue
|
@ -460,11 +460,19 @@ export default { |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
// -> Handle anchor scrolling |
|
|
// -> Handle anchor scrolling |
|
|
this.$nextTick(() => { |
|
|
|
|
|
if (window.location.hash && window.location.hash.length > 1) { |
|
|
|
|
|
this.$vuetify.goTo(window.location.hash, this.scrollOpts) |
|
|
|
|
|
|
|
|
if (window.location.hash && window.location.hash.length > 1) { |
|
|
|
|
|
if (document.readyState === 'complete') { |
|
|
|
|
|
this.$nextTick(() => { |
|
|
|
|
|
this.$vuetify.goTo(window.location.hash, this.scrollOpts) |
|
|
|
|
|
}) |
|
|
|
|
|
} else { |
|
|
|
|
|
window.addEventListener('load', () => { |
|
|
|
|
|
this.$vuetify.goTo(window.location.hash, this.scrollOpts) |
|
|
|
|
|
}) |
|
|
} |
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
this.$nextTick(() => { |
|
|
this.$refs.container.querySelectorAll(`a[href^="#"], a[href^="${window.location.href.replace(window.location.hash, '')}#"]`).forEach(el => { |
|
|
this.$refs.container.querySelectorAll(`a[href^="#"], a[href^="${window.location.href.replace(window.location.hash, '')}#"]`).forEach(el => { |
|
|
el.onclick = ev => { |
|
|
el.onclick = ev => { |
|
|
ev.preventDefault() |
|
|
ev.preventDefault() |
|
|