- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们在 our course website 上使用 MathJax ,它在 Jekyll 中实现并托管在 GitHub 页面上。对于小而简单的方程,MathJax 工作得很好,但我从来没有能够让稍微更复杂的方程起作用。我花了很多时间进行调查和试验,所以我想我终于可以在这里问了。
例如,以下无法呈现:
$$
S_{i} =
\begin{cases}
X_{1} & \text{if i = 1}\\
\alpha \cdot X_{i} + (1 - \alpha) \cdot S_{i-1} & \text{if i $>$ 1}
\end{cases}
$$
Web 浏览器中的渲染输出实际上是空白的。
<p>
<span class="MathJax_Preview" style="color: inherit; display: none;"></span>
<span id="MathJax-Element-5-Frame" class="mjx-chtml MathJax_CHTML" tabindex="0" data-mathml="
<math
xmlns="http://www.w3.org/1998/Math/MathML" />" role="presentation" style="font-size: 113%; position: relative;">
<span id="MJXc-Node-149" class="mjx-math" aria-hidden="true">
<span id="MJXc-Node-150" class="mjx-mrow"></span>
</span>
<span class="MJX_Assistive_MathML" role="presentation">
<math
xmlns="http://www.w3.org/1998/Math/MathML">
</math>
</span>
</span>
<script type="math/tex" id="MathJax-Element-5">%
<![CDATA[ S_{i} = \begin{cases} X_{1} & \text{if i = 1}\\ \alpha \cdot X_{i} + (1 - \alpha) \cdot S_{i-1} & \text{if i $>$ 1} \end{cases} %]]>
</script>
</p>
我不是 LaTeX 专家,所以我经常在诸如
https://www.codecogs.com/latex/eqneditor.php 之类的在线编辑器中编写方程式(或至少检查它们)。或 OverLeaf。他们在那里渲染得很好。
最佳答案
看起来 Jekyll 将数学插入为 MathJax <script>
标签( <script type="math/tex">
),该标签的内容是 TeX 表达式。不幸的是,该插件正在插入一些额外的文本来将内容标记为 CDATA
.这在 HTML 中不需要,但对于 XHTML 可能需要。你的页面是 XHTML(我不知道 Jekyll 生成什么)?
无论如何,该插件可能最初插入
<script type="math/tex">
% <![CDATA[
... your expression...
% ]]>
</script>
那会奏效(即使没有必要),因为
%
在 TeX 中标记注释,所以
<![CDATA[
将被忽略,关闭
]]>
也将被忽略。 .
<script type="math/tex">% <![CDATA[... your expression...% ]]></script>
都在一条线上。这意味着第一个
%
使整个表达式的其余部分变成注释,并且数学被有效地注释掉。这意味着您没有输出,因为数学表达式实际上是空的。
<script type="text/x-mathjax-config">
MathJax.Hub.Register.StartupHook('TeX Jax Ready', function () {
MathJax.InputJax.TeX.prefilterHooks.Add(function (data) {
data.math = data.math.replace(/^% <!\[CDATA\[/, '').replace(/%\]\]>$/, '');
});
});
</script>
以及版本 3:
<script>
MathJax = {
startup: {
ready: function() {
var HTMLDomStrings = MathJax._.handlers.html.HTMLDomStrings.HTMLDomStrings;
var handleTag = HTMLDomStrings.prototype.handleTag;
HTMLDomStrings.prototype.handleTag = function (node, ignore) {
if (this.adaptor.kind(node) === '#comment') {
var text = this.adaptor.textContent(node);
if (text.match(/^\[CDATA\[(?:\n|.)*\]\]$/)) {
this.string += '<!'
this.extendString(node, text);
this.string += '>';
return this.adaptor.next(node);
}
}
return handleTag.call(this, node, ignore);
}
MathJax.startup.defaultReady();
MathJax.startup.document.inputJax[0].preFilters.add(function (data) {
data.math.math = data.math.math.replace(/^% <!\[CDATA\[/, '').replace(/%\]\]>$/, '');
});
}
}
};
</script>
在任何情况下,是(可能不必要的)CDATA“注释”以及换行符的删除导致了问题。
关于javascript - MathJax:无法使用 Jekyll 渲染\begin{cases}...\end{cases},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67302929/
bundle exec jekyll serve Traceback (most recent call last): 4: from /Users/Suwan_Long/.rvm/gems/
我对 jekyll 之间的关系感到困惑和 jekyll bootstrap .我想创建一个博客,但我不确定要使用哪个网站来提供教程等等。 最佳答案 Jekyll 是主要的东西。它是将您的 Markdo
我正在重写我的博客以使用 Jekyll。 Jekyll 使用 Liquid 模板语言,因此学习如何自定义变得更加困难。 我有很多 .md 文件(markdown),每个帖子一个。对于我在前面的以下内容
在 jekyll 中是否有等同于 laravel 的 @section('') block ?我想做的是创建一个模板,可以压缩多个 jekyll 页面之间共享的 html。例如: 默认布局
我想为我的 jekyll 博客主页上的每篇文章添加一个赞按钮 我没有找到任何插件。我不想要任何连接到公司/产品页面点赞的 Facebook 点赞按钮。 我想要一个独立于任何社交平台且仅与帖子相关的点赞
在我的网站上,会有两种类型的帖子:blog和 portfolio .我希望每个类别都有一个页面,只显示该类别的帖子。 在 Jekyll 中实现这一目标的最佳方法是什么?我已经做了一些功课,但我正在努力
我正在使用 Jekyll。帖子和页面有什么区别?据我所知: 它们都可以包含 YAML 前端内容,以及 一个帖子有一个日期和一个永久链接,但一个页面没有。 还有更多不同吗? 最佳答案 以下是差异 帖子文
我在一个 jekyll 帖子上有以下标题,其中一个作者“usman”生成 this文章。我想要类似“作者:usman,someone_else”这样的同事也可以为这篇文章做出贡献。这可能吗?我将如何设
我看官方文档的时候,只提到了{% highlight python %}语法: https://jekyllrb.com/docs/templates/ 但是我更喜欢使用反引号代码块来突出 Markd
是否可以拥有多语言 jekyll 网站而无需维护单独的 _post 文件? 我知道可以通过 _posts/2014-02-27-post.md 实现它和 _posts/pt/2014-02-27-po
我正在尝试使用 jekyll 来创建网站。我正在使用 jekyll-bootstrap。 默认配置有页面存档,其中所有帖子都按帖子日期的年份和月份分组列出。目前,月份以英文显示。我看过代码,这是一段摘
我正在尝试从我的网站创建帖子的存档页面。我希望能够以这种格式为每个月的帖子列表提供一个页面: www.mywebsite.com/2016/11 将显示 2016 年 11 月的所有帖子。 我可以为我
我正在尝试从我的网站创建帖子的存档页面。我希望能够以这种格式为每个月的帖子列表提供一个页面: www.mywebsite.com/2016/11 将显示 2016 年 11 月的所有帖子。 我可以为我
为了只显示 4 个帖子,我使用了以下代码段: {% for post in site.categories.mycategory limit:4 %} {{ post.content }} {%
我要添加collections到我的 Jekyll 网站。在我的 _config.yml 文件中,我设置了 output: true: collections: faq: output:
目前我在静态网站上工作,所以我使用 jekyll 来生成它。为了拥有漂亮的结构和精美的 URL,我使用永久链接。 permalink: /impressum/ 例如,impressum.html 被呈
我希望我的 Jekyll 站点上的所有帖子和页面都具有相同的链接结构:example.com/my-title ,无论我用来存储文件的目录结构如何。 查看 documentation看来我应该能够通过
有什么办法可以做这样的事情吗? {% if file.basename contains {{basename}} %} 我看到的所有示例都明确使用了一个值,如下所示: {% if file.base
关注 Jekyll Collections documentation ,我在_config.yml中写了如下代码 _config.yml collections: - popular_posts 所
我正在尝试计算和列出 Jekyll 中名为 _note 的集合中的标签。我认为,我非常接近解决它,但我对标签的实际计数有点困惑(列出唯一标签工作正常)并且可以用第二双眼睛查看液体标记看看我错过了什么。
我是一名优秀的程序员,十分优秀!