我一直试图将本页上的文档包装起来 https://docs.mathjax.org/en/v1.0/typeset.html,但似乎无法正常工作。
如果我在静态HTML页面上键入表达式,但是如果我尝试以这种方式添加段落,则效果很好:
let para = document.createElement("P");
let testExp = document.createTextNode("$$ testexpression \cdot \frac{2}{3}$$");
para.appendChild(testExp);
document.getElementById("sampleDoc").append(para);
表达式仅显示为字符串。我知道人们以前也曾问过类似的问题,但我找不到对我有帮助的东西。
如果有人能解释为什么它不能以这种方式工作,但如果我在静态HTML页面上编写与段落相同的表达式的话,我也很感兴趣
亲切的问候
答案 0 :(得分:1)
createTextNode
仅创建纯文本节点。您没有在代码中调用排版功能,因此它永远不会改变。您可以添加以下行:
MathJax.Hub.Queue(["Typeset", MathJax.Hub, "sampleDoc"]);
这使MathJax的排版功能排队,如文档中所述。它遍历您的文档并进行必要的更改。最后一个参数是要排版的特定元素的ID。您可以忽略它来排版整个文档。
您不需要在静态页面上执行任何操作,因为MathJax在加载时会自动运行排版功能。