mirror of
https://github.com/rust-lang/rust.git
synced 2025-04-28 02:57:37 +00:00
Scroll when the anchor change and is linking outside of the displayed content
This commit is contained in:
parent
c42d846add
commit
c5275027c3
@ -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;
|
||||
})();
|
||||
|
Loading…
Reference in New Issue
Block a user