linenumber.js 855 B

123456789101112131415161718192021222324252627282930
  1. /*global document */
  2. (function() {
  3. var source = document.getElementsByClassName('prettyprint source linenums');
  4. var i = 0;
  5. var lineNumber = 0;
  6. var lineId;
  7. var lines;
  8. var totalLines;
  9. var anchorHash;
  10. var lineNumberHTML = '';
  11. if (source && source[0]) {
  12. anchorHash = document.location.hash.substring(1);
  13. lines = source[0].getElementsByTagName('li');
  14. totalLines = lines.length;
  15. for (; i < totalLines; i++) {
  16. lineNumber++;
  17. lineId = 'line' + lineNumber;
  18. lines[i].id = lineId;
  19. lineNumberHTML = '<span class="number">' + (i + 1) + ' : </span>';
  20. lines[i].insertAdjacentHTML('afterBegin', lineNumberHTML);
  21. if (lineId === anchorHash) {
  22. lines[i].className += ' selected';
  23. }
  24. }
  25. }
  26. })();