无论如何将脚本(例如MathJax)加载到EpicEditor预览iFrame中?我希望我的预览是正确的Markdown,然后运行javascript来预览MathJax内容。
谢谢!
答案 0 :(得分:2)
似乎你应该手动将MathJax脚本注入预览器iframe。像这样:
var editor = new EpicEditor(opts).load();
previewer = editor.getElement('previewer');
var mathjax = previewer.createElement('script');
mathjax.type = 'text/javascript';
mathjax.src = 'http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML';
previewer.body.appendChild(mathjax);
var config = previewer.createElement('script');
config.type = 'text/x-mathjax-config';
config.text = "MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$']], displayMath: [['$$','$$']], processEscapes: true}});";
previewer.body.appendChild(config);
然后你可以在预览事件上渲染方程式:
editor.on('preview', function() {
editor.getElement('previewerIframe').contentWindow.eval(
'MathJax.Hub.Queue(["Typeset",MathJax.Hub]);');
});
这也适用于全屏实时编辑模式。