diff options
| author | Guillaume Gomez <guillaume.gomez@huawei.com> | 2022-03-05 15:31:57 +0100 |
|---|---|---|
| committer | Guillaume Gomez <guillaume.gomez@huawei.com> | 2022-03-05 15:31:57 +0100 |
| commit | c5275027c38276f5dfdd9af11646a1c7b14203ea (patch) | |
| tree | 80e670059507ed7830460c856a031d953659fc75 /src/librustdoc | |
| parent | c42d846add941a26bd254911e16f02c4a3f9346f (diff) | |
| download | rust-c5275027c38276f5dfdd9af11646a1c7b14203ea.tar.gz rust-c5275027c38276f5dfdd9af11646a1c7b14203ea.zip | |
Scroll when the anchor change and is linking outside of the displayed content
Diffstat (limited to 'src/librustdoc')
| -rw-r--r-- | src/librustdoc/html/static/js/source-script.js | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/src/librustdoc/html/static/js/source-script.js b/src/librustdoc/html/static/js/source-script.js index 90490acccfd..aa77e62ba5a 100644 --- a/src/librustdoc/html/static/js/source-script.js +++ b/src/librustdoc/html/static/js/source-script.js @@ -149,7 +149,7 @@ function createSourceSidebar() { var lineNumbersRegex = /^#?(\d+)(?:-(\d+))?$/; -function highlightSourceLines(scrollTo, match) { +function highlightSourceLines(match) { if (typeof match === "undefined") { match = window.location.hash.match(lineNumbersRegex); } @@ -170,11 +170,9 @@ function highlightSourceLines(scrollTo, match) { if (!elem) { return; } - if (scrollTo) { - var x = document.getElementById(from); - if (x) { - x.scrollIntoView(); - } + var x = document.getElementById(from); + if (x) { + x.scrollIntoView(); } onEachLazy(document.getElementsByClassName("line-numbers"), function(e) { onEachLazy(e.getElementsByTagName("span"), function(i_e) { @@ -198,7 +196,7 @@ var handleSourceHighlight = (function() { y = window.scrollY; if (searchState.browserSupportsHistoryApi()) { history.replaceState(null, null, "#" + name); - highlightSourceLines(true); + highlightSourceLines(); } else { location.replace("#" + name); } @@ -230,7 +228,7 @@ var handleSourceHighlight = (function() { window.addEventListener("hashchange", function() { var match = window.location.hash.match(lineNumbersRegex); if (match) { - return highlightSourceLines(false, match); + return highlightSourceLines(match); } }); @@ -238,7 +236,7 @@ onEachLazy(document.getElementsByClassName("line-numbers"), function(el) { el.addEventListener("click", handleSourceHighlight); }); -highlightSourceLines(true); +highlightSourceLines(); window.createSourceSidebar = createSourceSidebar; })(); |
