Проблемы с загрузкой Mathjax - PullRequest
0 голосов
/ 27 марта 2012

У меня есть веб-страница, которая отображает уравнения латекса с использованием mathjax.Чтобы ускорить загрузку уравнений, я пытаюсь избежать этапа предварительной обработки, заменив математические разделители

на <span class="MathJax_Preview">[loading...]</span><script type="math/tex;"> latex equation here </script>

Но проблема в том, чтово время рендеринга html-объекты, входящие в уравнение, показаны как таковые, и, следовательно, уравнения не отображаются должным образом. Например, «&» используется для выравнивания нескольких шагов.Но он отображается как &

Замена математических разделителей на тег <script> выполняется динамически.Если я уберу этот шаг, то упомянутой проблемы не будет, и html-объекты в уравнении будут правильно отображены.

Как мне решить эту проблему?

Моя конечная цель - ускорить загрузку уравнения,Показывайте preloder как [loading ...], пока математика не будет набрана полностью.

Спасибо,

LS Developer

1 Ответ

0 голосов
/ 28 марта 2012

Обратите внимание, что содержимое <script type="math/tex"> - это TeX (или LaTeX), а не HTML, и поэтому сущности HTML не должны быть там включены.Содержимое любого <script> в HTML - это CDATA, поэтому в нем не выполняется обработка, включая преобразование сущностей.

Если вы используете числовые сущности, такие как &#65; или &#x41;, то этолегко заменить те символы, которые они представляют.Если вы используете именованные сущности, вам нужно будет перевести их в символы через поиск в таблице или другой процесс.А еще лучше не ставить сущности на первое место.Вы не можете выполнить этот шаг?(Я предполагаю, что это делается вне вашего контроля.)

Обратите внимание, что шаг предварительной обработки в MathJax на самом деле довольно быстрый и вряд ли будет узким местом, если у вас нет огромного числа уравнений.Преобразование в HTML - это время.Если вы не используете один из комбинированных файлов конфигурации, вы, вероятно, получите лучшее улучшение, просто перейдя к одному из них, чем удалив шаг препроцессора.Если вы уже используете комбинированный файл конфигурации, но не используете версию «-full», то переход к ней также ускорит обработку математических операций (поскольку вам не придется ждать ввода и вывода jaxзагрузить при первом использовании).

...