From 491992c1b505a4f476b39d54ef25f22bf730bfed Mon Sep 17 00:00:00 2001 From: eashaw Date: Wed, 13 Oct 2021 17:31:25 -0500 Subject: [PATCH] Handle scrolling to hash links when coming from an external page (#2513) --- .../assets/js/pages/docs/basic-documentation.page.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/website/assets/js/pages/docs/basic-documentation.page.js b/website/assets/js/pages/docs/basic-documentation.page.js index 34a67de362..91905e466b 100644 --- a/website/assets/js/pages/docs/basic-documentation.page.js +++ b/website/assets/js/pages/docs/basic-documentation.page.js @@ -98,6 +98,16 @@ parasails.registerPage('basic-documentation', { debug: false, }); + // Handle hashes in urls when coming from an external page. + if(window.location.hash){ + let possibleHashToScrollTo = _.trimLeft(window.location.hash, '#'); + let hashToScrollTo = document.getElementById(possibleHashToScrollTo); + // If the hash matches a header's ID, we'll scroll to that section. + if(hashToScrollTo){ + hashToScrollTo.scrollIntoView(); + } + } + // // Alternative jQuery approach to grab `on this page` links from top of markdown files // let subtopics = $('#body-content').find('h1 + ul').children().map((_, el) => el.innerHTML); // subtopics = $.makeArray(subtopics);