使用JavaScript渲染MathJax无法正常工作

4

我正在尝试通过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个回答

4

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接