diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustdoc/html/static/main.js | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/librustdoc/html/static/main.js b/src/librustdoc/html/static/main.js index e992c0b62bf..4db02d58c51 100644 --- a/src/librustdoc/html/static/main.js +++ b/src/librustdoc/html/static/main.js @@ -401,16 +401,21 @@ function getSearchElement() { var prev_line_id = 0; var set_fragment = function(name) { + var x = window.scrollX, + y = window.scrollY; if (browserSupportsHistoryApi()) { history.replaceState(null, null, "#" + name); highlightSourceLines(); } else { location.replace("#" + name); } + // Prevent jumps when selecting one or many lines + window.scrollTo(x, y); }; return function(ev) { var cur_line_id = parseInt(ev.target.id, 10); + ev.preventDefault(); if (ev.shiftKey && prev_line_id) { // Swap selection if needed |
