mirror of
https://github.com/overleaf/overleaf.git
synced 2024-11-29 14:13:38 -05:00
Fix "For students" link in footer isn't working properly (#13296)
* Fix "For student" link in footer isn't working because of hash being placed before querystring * add scroll to top behaviour if "For students" link is accessed on the plans page * Add an extra delay to make sure computation is finished before performing scroll to top behaviour GitOrigin-RevId: 46b906271223267bc47ffcd781c25dc03f23a8e7
This commit is contained in:
parent
7bbf7baf03
commit
8120d52de1
2 changed files with 19 additions and 2 deletions
|
@ -54,7 +54,7 @@ footer.fat-footer.hidden-print
|
||||||
li
|
li
|
||||||
a(href="/for/universities") #{translate('for_universities')}
|
a(href="/for/universities") #{translate('for_universities')}
|
||||||
li
|
li
|
||||||
a(href="/user/subscription/plans#view=student?itm_referrer=footer-for-students") #{translate('for_students')}
|
a(href="/user/subscription/plans?itm_referrer=footer-for-students#view=student") #{translate('for_students')}
|
||||||
|
|
||||||
.footer-section
|
.footer-section
|
||||||
.footer-section-heading #{translate('get_involved')}
|
.footer-section-heading #{translate('get_involved')}
|
||||||
|
|
|
@ -170,8 +170,25 @@ function selectViewFromHash() {
|
||||||
// set annual as the default
|
// set annual as the default
|
||||||
currentMonthlyAnnualSwitchValue = 'annual'
|
currentMonthlyAnnualSwitchValue = 'annual'
|
||||||
selectTab(view)
|
selectTab(view)
|
||||||
|
|
||||||
// clear the hash so it doesn't persist when switching plans
|
// clear the hash so it doesn't persist when switching plans
|
||||||
window.location.hash = ''
|
const currentURL = window.location.pathname + window.location.search
|
||||||
|
history.replaceState('', document.title, currentURL)
|
||||||
|
|
||||||
|
// Add a small delay since it seems the scroll won't behave correctly on this scenario:
|
||||||
|
// 1. Open plans page
|
||||||
|
// 2. Click on "Group Plans"
|
||||||
|
// 3. Scroll down to footer
|
||||||
|
// 4. Click "For students" link
|
||||||
|
//
|
||||||
|
// I assume this is happening because the `selectTab` function above is doing a lot
|
||||||
|
// of computation to change the view and it somehow prevents the `window.scrollTo` command
|
||||||
|
// to behave correctly.
|
||||||
|
const SCROLL_TO_TOP_DELAY = 50
|
||||||
|
|
||||||
|
window.setTimeout(() => {
|
||||||
|
window.scrollTo({ top: 0, behavior: 'smooth' })
|
||||||
|
}, SCROLL_TO_TOP_DELAY)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch {
|
} catch {
|
||||||
|
|
Loading…
Reference in a new issue