gpt4 book ai didi

javascript - 使用 javascript 的 Mathjax 插件无法识别内联数学表达式

转载 作者:行者123 更新时间:2023-12-04 03:58:25 25 4
gpt4 key购买 nike

这是我实现 Mathjax 的代码。

    <head>

<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script>

<script type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: { inlineMath: [['$', '$']] },
elements: ['math']
});
</script>

</head>

这是我在 html 中添加另一个数学表达式的代码

function dumpElement(blockIdentifier, questionNumber, data){
document.getElementById(blockIdentifier).innerHTML += `<p style= "float:left; left:0%;">` + (questionNumber + ')') + `</p>
<p id = "math">` + data + `</p> <br><br><br><br>`;
}

在页面初始加载并调用此函数后,我无法正确显示“数据”(一个 latex 编码字符串)。例如,这是我使用 inspect 元素复制的一个元素。

<p id="math">$\frac{37}{40}$</p>

更有趣的是,下面的 html 标签被静态输入到 html 中(也就是说,它将在函数 dumpElement() 之前显示)并正确显示!

<p id="math">$-\frac{2}{3}$</p>

我应该怎么做才能让动态打印的 html 标签正确显示?谢谢。

最佳答案

尝试稍微更改您的 MathJax 配置选项。也许 tex2jax 就足够了:

<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script>

<script type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: { inlineMath: [['$', '$']] }
});
</script>

如果需要,请为元素使用唯一 ID:

<p id="math-1">$\frac{37}{40}$</p>

<p id="math-2">$1-\frac{2}{3}$</p>

<div id="some-unique-id">Some text...</div>

我也会尝试更改 JavaScrtipt 代码:

function dumpElement(blockIdentifier, questionNumber, data) {
const wrapperElement = document.getElementById(blockIdentifier);

let htmlText = `<p style="float: left; left: 0%;">${questionNumber})</p>`;
htmlText += `<p id="math-{questionNumber}">${data}</p><br><br><br><br>`;

wrapperElement.innerHTML += htmlText;
}

dumpElement('some-unique-id', '3', '$4^2-\\frac{37}{40}$');

演示 - https://codepen.io/vyspiansky/pen/yLOVeMe?editors=1010

关于javascript - 使用 javascript 的 Mathjax 插件无法识别内联数学表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63510214/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com