我有一个运行在Apache上的web应用程序,它有一个文本输入框。在这里,用户可以发布文本并进行预览。我已经能够在预览中使用MathJax动态呈现数学公式。问题出在将HTML代码(其发布文本)上载到MySQL服务器之后,当任何用户访问该站点时,MathJax不会呈现。我保存完全相同的HTML代码,这是在用户使一些文本斜体,渲染数学公式等后生成的,因此保存的HTML不包含"x^2“,而是由MathJax生成的代码,以实际正确地查看数学。
如何从“原始”HTML代码开始,并呈现<div class="text-post">
中的数学jax标记和代码?它就在那里,它只是没有渲染任何东西,只是一些占用空间的空白方块。
我尝试过在window.onload() { ... }
中使用MathJax.rerender();
,以便在页面呈现时呈现MathJax。我也尝试过MathJax.Hub.Queue(["Typeset", MathJax.Hub]);
和MathJax.typeset();
,所有这些都放在window.onload { ... [code] }
的末尾。
编辑:我正在使用MathJax 3.x,我看到一些人在其他帖子上评论说,符号是从MathJax 2.x更改的,但是在他们的文档中搜索关键字" rerender“只给出了一个非常无用的评论,关于调用rerender时返回false,而不是如何真正地rerender公式。
发布于 2020-11-19 01:02:03
不要在window.onload()
事件中调用MathJax.typeset()
,而是在加载了整个文档之后调用MathJax.typeset()
。
例如:
document.addEventListener('load', function(){
MathJax.typeset()
})
https://stackoverflow.com/questions/64863940
复制相似问题