gpt4 book ai didi

javascript - 仅在有分隔符时才动态显示 MathJax

转载 作者:可可西里 更新时间:2023-11-01 02:54:48 26 4
gpt4 key购买 nike

我一直在调整下面的示例代码。 MathJax 的文档不是很完整。有更多经验的人可以告诉我应该如何修改下面的代码,以便只有在我指定了 $\alpha$ 等分隔符时才解析 Tex。我想让它像在 math.stackexchange 上一样工作。

   <html>
<head>
<title>MathJax Dynamic Math Test Page</title>

<script type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: {
inlineMath: [["$","$"],["\\(","\\)"]]
}
});
</script>
<script type="text/javascript"
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML-full">
</script>

</head>
<body>

<script>
//
// Use a closure to hide the local variables from the
// global namespace
//
(function () {
var QUEUE = MathJax.Hub.queue; // shorthand for the queue
var math = null; // the element jax for the math output.

//
// Get the element jax when MathJax has produced it.
//
QUEUE.Push(function () {
math = MathJax.Hub.getAllJax("MathOutput")[0];
});

//
// The onchange event handler that typesets the
// math entered by the user
//
window.UpdateMath = function (TeX) {
QUEUE.Push(["Text",math,"\\displaystyle{"+TeX+"}"]);
}
})();
</script>
<textarea id="MathInput" size="50" onkeyup="UpdateMath(this.value)"></textarea>

<div id="MathOutput">
You typed: ${}$
</div>

</body>
</html>

最佳答案

您发布的示例代码采用 MathInput 的内容,并将第一个 MathJax 元素替换为 MathInput 中的新“数学”。您想要的是排版 MathInput 并为分隔文本创建新的 MathJax 元素。我在这里设置了一个 jsFiddle 示例: http://jsfiddle.net/Zky72/2/

主要变化在 UpdateMath 函数中:

 window.UpdateMath = function (TeX) {
//set the MathOutput HTML
document.getElementById("MathOutput").innerHTML = TeX;

//reprocess the MathOutput Element
MathJax.Hub.Queue(["Typeset",MathJax.Hub,"MathOutput"]);

}

关于javascript - 仅在有分隔符时才动态显示 MathJax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7926233/

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