首页 > 解决方案 > javascript更新mathJax方程的问题

问题描述

我有一些代码在其中更新 javascript 中的 mathJax 方程中的一些变量。它在第一遍(即刷新页面)上运行良好,但是当我在第二遍更新变量时,方程显示为 Latex 代码而不是渲染方程。

document.getElementById("sumstdeveq").innerHTML="$$ \\sqrt{("+stdev1+")^2+("+stdev2+")^2} $$";

此行在第一次通过时工作正常,但是当我更新 stdev1 和 stdev2 并再次运行此行时,它只显示代码。

这是一个小提琴:https ://jsfiddle.net/yangchris16/k8us0hLt/6/

更改其中一个输入文本框中的值。

标签: javascriptmathjax

解决方案


我对 MathJax 不太了解,但添加以下行对小提琴有用。

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

在你提到的那一行之后:

stdev1=0.2;
stdev2=0.05;

updatecalcs();

function updatecalcs(){
    stdev1=parseFloat(document.getElementById("stdev1in").value);
    stdev2=parseFloat(document.getElementById("stdev2in").value);

    document.getElementById("sumstdeveq").innerHTML="$$ \\sqrt{("+stdev1+")^2+("+stdev2+")^2} $$";
    MathJax.Hub.Queue(["Typeset",MathJax.Hub,this.formula]);
}

推荐阅读