fix mathjax #296
parent
2c6234fb74
commit
d75e98e892
4 changed files with 59 additions and 25 deletions
@ -1,19 +1,52 @@ |
|||||||
<script async src="<%- theme.plugins.mathjax %>"></script> |
<script async src="https://cdn.jsdelivr.net/npm/mathjax@3.0/es5/tex-mml-chtml.js"></script> |
||||||
<!-- MathJax配置,可通过单美元符号书写行内公式等 --> |
<!-- MathJax配置,可通过单美元符号书写行内公式等 --> |
||||||
|
|
||||||
<script> |
<script> |
||||||
window.MathJax = { |
if (typeof MathJax === 'undefined') { |
||||||
tex: { |
window.MathJax = { |
||||||
inlineMath: [ ["$", "$"], ["\\(","\\)"] ], |
loader: { |
||||||
displayMath: [ ['$$','$$'], ["\\[","\\]"] ], |
source: { |
||||||
processEscapes: true, |
'[tex]/amsCd': '[tex]/amscd', |
||||||
tags: "ams", |
'[tex]/AMScd': '[tex]/amscd' |
||||||
macros: { |
} |
||||||
href: "{}" |
}, |
||||||
} |
tex: { |
||||||
}, |
inlineMath: {'[+]': [['$', '$']]}, |
||||||
options: { |
tags: 'ams' |
||||||
ignoreHtmlClass: "tex2jax_ignore|dno", |
}, |
||||||
skipHtmlTags: ['script', 'noscript', 'style', 'textarea', 'pre', 'code'] |
options: { |
||||||
|
renderActions: { |
||||||
|
findScript: [10, doc => { |
||||||
|
document.querySelectorAll('script[type^="math/tex"]').forEach(node => { |
||||||
|
const display = !!node.type.match(/; *mode=display/); |
||||||
|
const math = new doc.options.MathItem(node.textContent, doc.inputJax[0], display); |
||||||
|
const text = document.createTextNode(''); |
||||||
|
node.parentNode.replaceChild(text, node); |
||||||
|
math.start = {node: text, delim: '', n: 0}; |
||||||
|
math.end = {node: text, delim: '', n: 0}; |
||||||
|
doc.math.push(math); |
||||||
|
}); |
||||||
|
}, '', false], |
||||||
|
insertedScript: [200, () => { |
||||||
|
document.querySelectorAll('mjx-container').forEach(node => { |
||||||
|
let target = node.parentNode; |
||||||
|
if (target.nodeName.toLowerCase() === 'li') { |
||||||
|
target.parentNode.classList.add('has-jax'); |
||||||
|
} |
||||||
|
}); |
||||||
|
}, '', false] |
||||||
|
} |
||||||
|
} |
||||||
|
}; |
||||||
|
(function () { |
||||||
|
var script = document.createElement('script'); |
||||||
|
script.src = 'https://cdn.jsdelivr.net/npm/mathjax@3.0/es5/tex-mml-chtml.js'; |
||||||
|
script.defer = true; |
||||||
|
document.head.appendChild(script); |
||||||
|
})(); |
||||||
|
} else { |
||||||
|
MathJax.startup.document.state(0); |
||||||
|
MathJax.texReset(); |
||||||
|
MathJax.typeset(); |
||||||
} |
} |
||||||
}; |
|
||||||
</script> |
</script> |
||||||
|
@ -0,0 +1,11 @@ |
|||||||
|
.article |
||||||
|
mjx-container |
||||||
|
font-family: $fontfamily-code |
||||||
|
background: $color-mathjax |
||||||
|
padding: $gap $gap * 0.5 |
||||||
|
border-radius: $border-codeblock |
||||||
|
min-width: 0 !important |
||||||
|
mjx-container[jax="CHTML"][display="true"], .has-jax |
||||||
|
overflow: auto hidden |
||||||
|
mjx-container + br |
||||||
|
display: none |
Loading…
Reference in new issue