我最近开始了一个博客,在我谈论节目,阅读,科学和数学。现在,对于编程部分,我已经安装了SyntaxHighlighter,但我搞糊涂了与我应该使用数学。我在考虑使用MathJax,因为我已经习惯了它,它是相当不错的。问题是,MathJax将与其他的东西干扰。例如,它可以与任何PHP代码(其中有大量的美元符号),我在编程后使用干扰。
现在,我想保持在线/块美元的迹象,但我不希望它炸掉其他的东西。我在想MathJax具有一定的CSS类关联,这样我可以附上其广泛使用的数学与这些标签的所有部分。通过这种方式,我的意思是,我仍然可以这些div内正常型(不必是数学指明分数),但我可以用美元符号,并得到数学代码。的div之外,任何美元符号将被单独留在家中。
有谁知道,让我这样做一个配置选项?我知道JS,但我不能找到文档中的任何选项。认为我会问这里通过代码耕前。
添加class="tex2jax_ignore"
到文档<body>
标记,然后用class="tex2jax_process"
的容器要包括数学页面的部分。正如其他人所指出的那样,你可以配置类名来使用这些功能。例如。
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: {
inlineMath: [['$','$'],['\\(','\\)']],
processClass: "mathjax",
ignoreClass: "no-mathjax"
}
});
</script>
然后,你的页面会
<html>
<head>
...
</head>
<body class="no-mathjax">
...
<div class="mathjax">
... (math goes here) ...
</div>
...
</body>
</html>
希望帮助。
大卫
来源:@ MarkS.Everitt
http://www.mathjax.org/docs/1.1/options/tex2jax.html
有一个配置选项,processClass: "tex2jax_process"
最终配置变为:
tex2jax: {
inlineMath: [['$','$'], ['\\(','\\)']],'
ignoreClass: "[a-zA-Z1-9]*",
processClass: "math"
}
});
现有的答案是不IMO真正的解决方案,因为它们涉及修改HTML。有时,这甚至是不可能的,但即使是这样,谁愿意弄脏自己只得到MathJax工作意义的CSS类的标记?
插入进口MathJax的<script>
标记之前以下标记:
<script type="text/x-mathjax-config">
MathJax.Hub.Config(
{
elements: mathElements
}
);
</script>
其中mathElements
包含DOM元素的列表被处理,例如像var mathElements = document.querySelectorAll("article")
。