diff options
Diffstat (limited to 'src/js')
-rw-r--r-- | src/js/even.js | 22 | ||||
-rw-r--r-- | src/js/main.js | 9 |
2 files changed, 27 insertions, 4 deletions
diff --git a/src/js/even.js b/src/js/even.js index 6b544a4..1711fa7 100644 --- a/src/js/even.js +++ b/src/js/even.js @@ -167,6 +167,16 @@ Even.highlight = function () { } } +Even.chroma = function() { + const blocks = document.querySelectorAll('.highlight > .chroma') + for (let i = 0; i < blocks.length; i++) { + const block = blocks[i] + const afterHighLight = block.querySelector('pre.chroma > code') + const lang = afterHighLight ? afterHighLight.className : '' + block.className += ' ' + lang + } +} + Even.toc = function () { const tocContainer = document.getElementById('post-toc') if (tocContainer !== null) { @@ -210,8 +220,12 @@ Even.flowchart = function () { const blocks = document.querySelectorAll('pre code.language-flowchart') for (let i = 0; i < blocks.length; i++) { + if (!window.hljs && i % 2 === 0) continue + const block = blocks[i] - const rootElement = block.parentElement + const rootElement = window.hljs + ? block.parentElement + : block.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement const container = document.createElement('div') const id = `js-flowchart-diagrams-${i}` @@ -229,8 +243,12 @@ Even.sequence = function () { const blocks = document.querySelectorAll('pre code.language-sequence') for (let i = 0; i < blocks.length; i++) { + if (!window.hljs && i % 2 === 0) continue + const block = blocks[i] - const rootElement = block.parentElement + const rootElement = window.hljs + ? block.parentElement + : block.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement const container = document.createElement('div') const id = `js-sequence-diagrams-${i}` diff --git a/src/js/main.js b/src/js/main.js index 289b8dc..64c44ca 100644 --- a/src/js/main.js +++ b/src/js/main.js @@ -12,5 +12,10 @@ $(document).ready(function () { Even.flowchart() Even.sequence() -hljs.initHighlighting() -Even.highlight() +if (window.hljs) { + hljs.initHighlighting() + Even.highlight() +} else { + Even.chroma() +} + |