InkSoul/themes/meme_cdn/layouts/partials/third-party/katex.html

51 lines
2.1 KiB
HTML

{{- $defaultCDN := "https://cdn.jsdelivr.net" -}}
<link rel="stylesheet" href="{{- .Site.Params.cdnCustomized | default $defaultCDN -}}/npm/katex@0.13.0/dist/katex.min.css" integrity="sha256-gPJfuwTULrEAAcI3X4bALVU/2qBU+QY/TpoD3GO+Exw=" crossorigin="anonymous">
<script>
if (typeof renderMathInElement === 'undefined') {
var getScript = (options) => {
var script = document.createElement('script');
script.defer = true;
script.crossOrigin = 'anonymous';
Object.keys(options).forEach((key) => {
script[key] = options[key];
});
document.body.appendChild(script);
};
getScript({
src: '{{- .Site.Params.cdnCustomized | default $defaultCDN -}}/npm/katex@0.13.0/dist/katex.min.js',
integrity: 'sha256-YTW9cMncW/ZQMhY69KaUxIa2cPTxV87Uh627Gf5ODUw=',
onload: () => {
getScript({
src: '{{- .Site.Params.cdnCustomized | default $defaultCDN -}}/npm/katex@0.13.0/dist/contrib/mhchem.min.js',
integrity: 'sha256-yzSfYeVsWJ1x+2g8CYHsB/Mn7PcSp8122k5BM4T3Vxw=',
onload: () => {
getScript({
src: '{{- .Site.Params.cdnCustomized | default $defaultCDN -}}/npm/katex@0.13.0/dist/contrib/auto-render.min.js',
integrity: 'sha256-fxJzNV6hpc8tgW8tF0zVobKa71eTCRGTgxFXt1ZpJNM=',
onload: () => {
renderKaTex();
}
});
}
});
}
});
} else {
renderKaTex();
}
function renderKaTex() {
renderMathInElement(
document.body,
{
delimiters: [
{left: "$$", right: "$$", display: true},
{left: "\\[", right: "\\]", display: true},
{left: "$", right: "$", display: false},
{left: "\\(", right: "\\)", display: false}
]
}
);
}
</script>