通过JavaScript渲染MathJax效果不佳

时间:2019-02-12 14:38:14

标签: javascript latex mathjax tex

我正在尝试通过JavaScript在MathJax中渲染一些数学方程式,但是它不适用于所有公式。

<html>
<head>
    <script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-MML-AM_CHTML"
        async>
    </script>
</head>

<body>
    <div id="formula"> </div>
    <script>
        function render() {
            document.getElementById('formula').innerHTML = "$$ x = {-b \pm \sqrt{b^2-4ac} \over 2a} $$"
            MathJax.Hub.Queue(["Typeset", MathJax.Hub]);
        };
        render();
    </script>
</body>
</html>

但是它可以直接正常工作,例如

   <div id="formula"> $$ x = {-b \pm \sqrt{b^2-4ac} \over 2a} $$ </div>

1 个答案:

答案 0 :(得分:1)

最后我找到了解决方案。在JavaScript文本字符串文字中,反斜杠需要加倍(因为反斜杠是字符串中的特殊字符)。因此,应该获得"$$ x = {-b \\pm \\sqrt{b^2-4ac} \\over 2a} $$ "与原始HTML相同的结果。