diff --git a/src/resources/markdown_template.html b/src/resources/markdown_template.html
index 149a0745..5ed8d112 100644
--- a/src/resources/markdown_template.html
+++ b/src/resources/markdown_template.html
@@ -5,6 +5,22 @@
+
+
+
diff --git a/src/resources/markdown_template.js b/src/resources/markdown_template.js
index 77a3035b..a4e910fd 100644
--- a/src/resources/markdown_template.js
+++ b/src/resources/markdown_template.js
@@ -51,6 +51,20 @@ new QWebChannel(qt.webChannelTransport,
}
});
+var VHighlightedAnchorClass = 'highlighted-anchor';
+
+var clearHighlightedAnchor = function() {
+ var headers = document.getElementsByClassName(VHighlightedAnchorClass);
+ while (headers.length > 0) {
+ headers[0].classList.remove(VHighlightedAnchorClass);
+ }
+};
+
+var highlightAnchor = function(anchor) {
+ clearHighlightedAnchor();
+ anchor.classList.add(VHighlightedAnchorClass);
+};
+
var g_muteScroll = false;
var scrollToAnchor = function(anchor) {
@@ -65,6 +79,8 @@ var scrollToAnchor = function(anchor) {
var anc = document.getElementById(anchor);
if (anc != null) {
anc.scrollIntoView();
+ highlightAnchor(anc);
+
var headers = document.querySelectorAll("h1, h2, h3, h4, h5, h6");
for (var i = 0; i < headers.length; ++i) {
if (headers[i] == anc) {
@@ -784,6 +800,7 @@ var jumpTitle = function(forward, relativeLevel, repeat) {
// Disable scroll temporarily.
g_muteScroll = true;
headers[targetIdx].scrollIntoView();
+ highlightAnchor(headers[targetIdx]);
currentHeaderIdx = targetIdx;
content.setHeader(headers[targetIdx].getAttribute("id"));
setTimeout("g_muteScroll = false", 100);