重新加载Mathjax =再次强制排版

时间:2014-09-09 20:32:32

标签: javascript mathjax

我想重新加载Mathjax,即在点击按钮时再次强制排版。

因此我写了以下代码:

<button onClick="newTask()"></button>

重装功能包含:

function newTask(){

  // This is a function creating a new task, i.e. replacing HTML between some tags

  newCode();



 // Now i want to renew typesetting by calling Mathjax

  MathJax.Hub.Queue(["Typeset",MathJax.Hub]);
}

我的脚本不起作用。我在哪里放置&#34; MathJax.Hub.Queue([&#34; Typeset&#34;,MathJax.Hub]);&#34; ? 任何帮助将不胜感激! :)

2 个答案:

答案 0 :(得分:2)

我不知道为什么它现在或以前没有用,但我将设置更改为以下内容:

在html文件中:

<button onClick="createBasicTask()">

其中createBasicTask()是newTask()

的新版本

并在js文件中:

function createBasicTask(){
...
newTypeset();
}

newTypeset为

function newTypeset(){
MathJax.Hub.Queue(["Typeset",MathJax.Hub]);
}

如果您感兴趣,整个脚本将是一个任务生成器,完整的源代码可以在这里查看: Source

现场演示(第一项任务): Demo

答案 1 :(得分:1)

对于使用MathJax 3的我,我必须在Alex的解决方案中将MathJax.Hub.Queue(["Typeset",MathJax.Hub]);替换为MathJax.typeset();