【发布时间】:2013-12-28 12:25:16
【问题描述】:
我需要在 Rails4 应用程序中使用 MathJax 的本地实例,但是 turbolinks 重新加载存在问题。
我使用 mathjax-rails gem(更新了 mathjax)从项目目录中排除 MJ 分发。
需要添加gem的路由
#routes.rb
mathjax 'mathjax'
布局中的助手
<%= mathjax_tag %>
但是当页面使用 turbolinks 加载时 - mathjax 不会运行。
如果我在页面 ready() 上调用 mathjax 重新加载函数
MathJax.Hub.Typeset();
它将以后备模式加载 - 使用图像而不是字体。
然后我找到了another solution,它使用 jQuery Ajax 重新加载 MathJax。 它与 CDN 完美搭配
http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML
但是当我将路径更改为 MathJax 的本地分布时
/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML
mathjax 主脚本不能包含其他 js 文件,因为丢失了 dist 根路径 (/mathjax)
当我使用 config 手动设置根路径时
root: "/mathjax"
它加载没有错误,但什么也没做。
【问题讨论】:
-
来自未来的注意事项:cdn.mathjax.org 即将结束生命周期,请查看mathjax.org/cdn-shutting-down 以获取迁移提示(也许为未来的读者更新您的帖子)。
标签: ruby-on-rails-4 reload mathjax turbolinks