ОБНОВЛЕННОЕ СООБЩЕНИЕ
Хорошо, мне удалось заставить Markdown и MathJax работать вместе, на самом деле это было относительно просто. Я использовал marked
вместе с MathJax.
$(function() {
var $text = $("#text"), // the markdown textarea
$preview = $("#preview"); // the preview div
$text.on("keyup", function() {
$preview.html( marked($text.val()) ); // parse markdown
MathJax.Hub.Queue(["Typeset", MathJax.Hub, "preview"]); // then let MathJax do its job
})
});
Теперь проблема в том, что я думаю, что уценка сначала анализирует мою математику, прежде чем MathJax сможет ее изменить. Как это исправить? Я думаю, что это исправлено в Math StackOverflow, но как? Мне нужно остановить уценку от разбора математики
ОБНОВЛЕНИЕ 2
Это работает, но не уверен, что это так, как это делает math.stackexchange, но, похоже, он дает аналогичные/те же результаты, что я тестировал до сих пор...
$(function() {
var $text = $("#text"),
$preview = $("#preview");
$text.on("keyup", function() {
$preview.html( $text.val() );
MathJax.Hub.Queue(["Typeset", MathJax.Hub, "preview"]);
});
MathJax.Hub.Register.MessageHook("End Process", function (message) {
$preview.html( marked($preview.html()) );
});
});
СТАРЫЙ ЗАПИСЬ НИЖЕ
В математическом стеке обмена я могу использовать MathJax с Markdown. Интересно, что мне нужно для этого? Я могу использовать такую библиотеку, как marked
, для рендеринга Markdown, но для MathJax кажется, что он просто рендерится при загрузке страницы. Как я могу вызвать его для повторного рендеринга или, лучше, просто рендерить то, что нужно (указано мной)
html = marked("some markdown string") // a HTML string
// is there something like
html = MathJax.parse(html)
ОБНОВЛЕНИЕ
Думаю, мне следует взглянуть на http://www.mathjax.org/docs/1.1/typeset.html#manipulating-individual-math-elements. Но когда я пытаюсь
$text.on("keyup", function() {
$preview.html( marked($text.val()) );
var math = MathJax.Hub.getAllJax("preview");
console.log(math);
MathJax.Hub.Queue(["Text", math, "a+b"]);
})
Где:
$text
: это элемент jQuery для моей текстовой области$preview
: предварительный просмотрdiv
Я обнаружил, что math
не определено, поэтому кажется, что var math = MathJax.Hub.getAllJax("preview")
не работает. У меня есть div#preview
кстати.
literal
тексте. - person Beni Cherniavsky-Paskin   schedule 10.03.2014