jquery - JQuery 中的 MathJax

标签 jquery mathjax

我有许多不同的 MathJax 公式,这些公式将在网页上的不同列表中动态移动。我试图用 JQuery 和附加属性来控制它。

在我的脚本文件中,我有各种公式数组,然后是一个使用 .append 列出指定 div 内部数组中的公式的函数。代码如下:

function listArray(array,div){
  for(var i=0; i<array.length; i++){
    $('#'+div).append('<li>'+array[i]); 
  }
};

我遇到的问题是 MathJax 在该脚本运行之前排版数学,因此附加的公式不会在 TeX 中显示。这是一个 fiddle 示例:

http://jsfiddle.net/T8m64/92/

有人知道这个问题有什么好的解决办法吗?我尝试阅读一些有关重新排版 MathJax 的文档,但我并没有真正遵循它。

最佳答案

您的 fiddle 示例有两个问题。首先,数学表达式数组丢失了反斜杠,因为它们在 JavaScript 字符串中用作转义字符。您需要将它们加倍:

var jax = ['\\(\\mathbb{Q}\\)','\\(\\mathbb{Z}\\)'];

其次,您需要告诉 MathJax 在将数学添加到页面后处理数学。使用

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

在附加数学之后才能做到这一点。

Version 120你的 fiddle 显示了一个工作版本。

关于jquery - JQuery 中的 MathJax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14513851/

相关文章:

JQuery 在 keyup 后启动 2 个回调

javascript - 无法根据用户添加的数字更改单选按钮的值

javascript - 如何防止 MathJax 中的公式触摸事件?

android - 在 android 4.4 上加载 Assets 文件时未捕获 ReferenceError

jquery qTip : making callout stay there

javascript - 将 api 响应推送到 .map() 中的全局变量以某种方式使数据无法访问

javascript - 使用 Jquery 更改 css 的问题

google-chrome - Mathjax 渲染的符号通过 Google Chrome 硬件加速消失

ios - iOS uiwebview 中的 MathJax 显示白框

latex - 具有 MathJax 或类似功能的 Virtual Latex 数学键盘