diff --git a/templates/default/static/scripts/linenumber.js b/templates/default/static/scripts/linenumber.js index 613865d0..f7848181 100644 --- a/templates/default/static/scripts/linenumber.js +++ b/templates/default/static/scripts/linenumber.js @@ -1,17 +1,19 @@ (function() { - var counter = 0; - var numbered; - var source = document.getElementsByClassName('prettyprint source'); + var source = document.getElementsByClassName('prettyprint source linenums'); + var i = 0, lineNumber = 0, lineId, lines, totalLines, anchorHash; if (source && source[0]) { - source = source[0].getElementsByTagName('code')[0]; + anchorHash = document.location.hash.substring(1); + lines = source[0].getElementsByTagName('li'); + totalLines = lines.length; - numbered = source.innerHTML.split('\n'); - numbered = numbered.map(function(item) { - counter++; - return '' + item; - }); - - source.innerHTML = numbered.join('\n'); + for (; i < totalLines; i++) { + lineNumber++; + lineId = 'line' + lineNumber; + lines[i].id = lineId; + if (lineId == anchorHash) { + lines[i].className += ' selected'; + } + } } -})(); +})(); \ No newline at end of file diff --git a/templates/default/static/styles/jsdoc-default.css b/templates/default/static/styles/jsdoc-default.css index d99a598d..d10f75f8 100644 --- a/templates/default/static/styles/jsdoc-default.css +++ b/templates/default/static/styles/jsdoc-default.css @@ -251,6 +251,11 @@ h6 border-left: 3px #ddd solid; } +.prettyprint .linenums li.selected code +{ + background-color: lightyellow; +} + .params, .props { border-spacing: 0;