javascript jquery html mathjax

javascript - Rendering MathJax actualizado con.html()



jquery (1)

Frank, usa el siguiente código:

HTML:

<html> <head> <script src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML"> </script> </head> <body> <div id="formula"></div> A: <input type="text" id="valueA"> B: <input type="text" id="valueB"> C: <input type="text" id="valueC"> <p><input type="button" value="Update" onclick="DynamicMJ.update()" /></p> <script> var DynamicMJ = { formula: document.getElementById("formula"), update: function () { var a = document.getElementById("valueA").value; b = document.getElementById("valueB").value; var c = document.getElementById("valueC").value; var tex = "//frac{"+a+"}{2}+ //frac{"+b+"}{2} = //frac{"+c+"}{5}"; this.formula.innerHTML = "//["+tex+"//]"; MathJax.Hub.Queue(["Typeset",MathJax.Hub,this.formula]); } }; DynamicMJ.update(); </script> </body> </html>

EXPLICACIÓN:

Necesita escribir un elemento HTML (div en este ejemplo) para escribir los valores, y luego puede insertar los valores de los cuadros de texto directamente en la fórmula.

¡Espero que esto ayude!

Ejemplo de jsfiddle: https://jsfiddle.net/3qu846tu/

Estoy tratando de actualizar MathJax-math mediante .html (), sin embargo, parece que mi código no funciona. Mi código actual tiene este aspecto, pero muestra "1 + 2 = 3" sin renderizar:

$$/class{x}{2}+/class{y}{2}=/class{z}{5}$$ <script> $( ''.x'' ).html( ''1'' ); $( ''.y'' ).html( ''2'' ); $( ''.z'' ).html( ''3'' ); MathJax.Hub.Queue(["Typeset", MathJax.Hub]); </script>

He intentado diferentes comandos, pero ninguno parece funcionar. ["Rerender", MathJax.Hub] simplemente muestra "2 + 2 = 5", por lo que parece que el archivo .html () se reinicia:

<script> MathJax.Hub.Queue(["Rerender",MathJax.Hub]); </script>

El resultado deseado se vería de esta forma (se omite js), donde / class {x} {} (y otros) pueden aparecer más de una vez en diferentes lugares:

<span>You have chosen /(/class{x}{}/) and /(/class{y}{}/)</span> $$/class{x}{}+/class{y}{}=/class{z}{}$$

¿Hay alguna manera de representar "1 + 2 = 3" de esta manera? $ (''.x'') puede cambiarse varias veces, no solo una vez.