【问题标题】:Prevent MathJax to append version to included JS防止 MathJax 将版本附加到包含的 JS
【发布时间】:2025-12-18 07:35:01
【问题描述】:

我不能阻止 MathJax 将版本附加到每个 JS 包含?

为了澄清,请遵循开发者控制台中的快照:

  • 编辑添加 config.js 不起作用

  • EDIT 2 使用更简单的解决方案进行更改,但仍然无法正常工作以及 sn-p

正如我在代码中看到的,一种可能的解决方案是覆盖 cdnVersion 属性。

按照默认值属性MathJax.js的快照:

MathJax.cdnVersion = "2.7.1";  // specifies a revision to break caching

根据 Mathjax 文档的建议 (http://docs.mathjax.org/en/latest/options/index.html ) 你可以使用MathJax.Hub.Config() 来完成这项工作。

我试过这个配置不起作用:

MathJax.Hub.Config({
    config: ["MMLorHTML.js"],
    jax: ["input/TeX","input/MathML","output/HTML-CSS","output/NativeMML", "output/PreviewHTML"],
    tex2jax: {inlineMath: [["$$","$$"]]},
    extensions: ["tex2jax.js","mml2jax.js","MathMenu.js","MathZoom.js", "fast-preview.js", "AssistiveMML.js"],
    TeX: {
        extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"]
    },
  cdnVersion: null
});

跟随一个演示 sn-p:

MathJax.Hub.Config({
    config: ["MMLorHTML.js"],
    jax: ["input/TeX","input/MathML","output/HTML-CSS","output/NativeMML", "output/PreviewHTML"],
    tex2jax: {inlineMath: [["$$","$$"]]},
    extensions: ["tex2jax.js","mml2jax.js","MathMenu.js","MathZoom.js", "fast-preview.js", "AssistiveMML.js"],
    TeX: {
        extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"]
    },
    cdnVersion: null
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js"></script>


$$ \frac{3}{4}x^2 $$

【问题讨论】:

    标签: javascript configuration mathjax


    【解决方案1】:

    这是不可能的,因为它们不是在config/default.js 中定义的设置,来自config documentation

    MathJax 的各种组件,包括它的输入和输出 处理器、它的预处理器、它的扩展和 MathJax 核心, 都可以通过config/default.js 文件或通过 MathJax.Hub.Config()call(确实,如果你仔细看,你会看到 config/default.js 本身就是一个很大的呼吁 MathJax.Hub.Config())。 config/default.js 中的任何内容都可以 内嵌于配置 MathJax

    【讨论】: