【问题标题】:Display MathJax equations smoothly and only once they are fully rendered平滑地显示 MathJax 方程,并且仅在完全渲染后才显示
【发布时间】:2016-09-03 01:40:51
【问题描述】:

我在我的网站上使用 MathJax 方程,并想找出一种方法来配置 MathJax,使方程最初根本不出现(当网站仍在加载时)并且只会平滑地淡入一次它们被完全渲染了吗?

这可能吗?我应该如何尝试实现它?

我试过

EqnChunk: 100,
EqnChunkFactor: 1,
EqnChunkDelay: 10,

但我没有看到太大的影响。在最终渲染之前仍然存在“初步渲染”(我相信,MathJax 正在计算周围字形的高度和宽度)。

非常感谢任何想法。

【问题讨论】:

  • 服务器端渲染是否适合您?
  • 我的网站托管在 Github 上,因此很遗憾不能选择服务器端渲染。
  • 这不是一个真正的问题,但没关系。您可能想用“平滑淡入”来解释您所追求的。显然,如果没有生成结果,您就无法知道结果的维度,因此一些抖动是不可避免的;除非您在完成 MathJax 之前完全隐藏页面。
  • 我的印象是在 Github Pages 上无法进行服务器端渲染。我很乐意得到纠正。我希望可以编写一个脚本,等待所有 MathJax 都被渲染,然后才显示所有的数学。代替数学,我希望在渲染时获得空白。如果方程的外观是“平滑的”,即一旦完全渲染它们需要大约一秒钟的时间“淡入”,那将是理想的。
  • 你说得对,GitHub 不提供任何东西,但你可以使用 travis 进行此类处理。正如 Davide Cervone 所说,没有现场示例,除了禁用快速预览和设置高分块(或执行类似 cdn.mathjax.org/mathjax/latest/test/sample-all-at-once.html 之类的操作)之外,很难给出任何建议

标签: css web mathjax


【解决方案1】:

您可能看到的是在生成最终输出之前的输入阶段创建的“快速预览”。你可以防止这种情况使用

<script type="text/x-mathjax-config">
MathJax.Hub.Config({
  "fast-preview": {disabled: true},
  tex2jax: {preview: "none"}
});
</script>

(假设您使用的是 TeX 输入。如果您使用的是 MathML 或 AsciiMath,则需要将 tex2jax 更改为 mml2jaxasciimath2jax。)

【讨论】:

  • 不幸的是,我之前尝试过的这个设置完全停用了数学渲染,并且 TeX 标记出现在网站上。
  • 那你做错了。如果您可以生成一个显示问题的页面,我们就可以看到出了什么问题。
猜你喜欢
  • 2013-02-24
  • 2019-07-12
  • 2016-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-10
相关资源
最近更新 更多