【问题标题】:MathJax not displaying dynamically added(using js) matrix properlyMathJax 未正确显示动态添加(使用 js)矩阵
【发布时间】:2019-05-19 00:56:39
【问题描述】:

我是 MathJax 的新手,刚刚开始学习它。我正在尝试通过使用 js 将矩阵添加到页面来显示矩阵。但它没有被正确渲染。我放置矩阵的代码是:

function displayTransformationMatrix()
{
    var matrix = "$$\begin{bmatrix} 1 & 0 & 0 & vx \\ 0 & 1 & 0 & vy \\ 0 & 0 & 1 & vz \\ 0 & 0 & 0 & 1 \end{bmatrix}$$"
    var tranMat = document.getElementById("transformMatrix");
    tranMat.innerHTML = matrix;
    MathJax.Hub.Queue(["Typeset", MathJax.Hub, 'transformMatrix']);
}

这里transformMatrixdivvx, vy, vz 是变量。当相同的文本直接添加到 div 时,矩阵会正确呈现,但如果以这种方式完成,它会给出:

我做错了什么?我刚刚开始学习 MathJax,所以如果有一些愚蠢的错误,请理解。

【问题讨论】:

    标签: javascript html mathjax


    【解决方案1】:

    在 javascript 中,\ 被保留为转义字符,如果你想在字符串中使用它,你必须将它加倍并写成 \\(请参阅登录控制台)

    function displayTransformationMatrix()
    {
        var matrix = "$$\\begin{bmatrix} 1 & 0 & 0 & vx \\\\ 0 & 1 & 0 & vy \\\\ 0 & 0 & 1 & vz \\\\ 0 & 0 & 0 & 1 \\end{bmatrix}$$"
        var tranMat = document.getElementById("transformMatrix");
        tranMat.innerHTML = matrix;
        MathJax.Hub.Queue(["Typeset", MathJax.Hub, 'transformMatrix']);
        console.log(matrix);
    }
    
    displayTransformationMatrix();
    <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS_SVG-full" type="text/javascript"></script>
    
     <span id="transformMatrix"></span>

    【讨论】:

      猜你喜欢
      • 2017-07-08
      • 1970-01-01
      • 2017-09-25
      • 2021-11-28
      • 2017-02-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-12
      • 1970-01-01
      相关资源
      最近更新 更多