2014-12-07 4 views
0

Я пытаюсь использовать MathJax внутри polymer.dart элемента:Как использовать MathJax внутри элемента полимерного дротика?

<script type="text/javascript" 
    src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"> 
</script> 

Любая помощь будет оценена. Обновление: С помощью этого:

MathJax.Hub.Queue(["Typeset",MathJax.Hub,"myDivWithMath"]); 
+0

Вы прочитали эту статью? https://www.dartlang.org/articles/js-dart-interop/ Существует также прогресс в создании нового пакета более высокого уровня, но я не уверен, что он еще не выполнен: https://github.com/dart -lang/js-interop –

+0

Это не решает проблему. Поскольку запросы MathJax для текстовых узлов в document.body, как я предполагаю, и MathJax не знает о ShadowDom. @John Попробуйте найти функцию, которая анализирует содержимое элемента HTML. Затем запросите его и начните разбор вручную. – Robert

+0

@Robert Мне нужно использовать это: MathJax.Hub.Queue (["Typet", MathJax.Hub, "myDivWithMath"]); Но я не знаю, как назвать это изнутри полимерного элемента ... или он просто не может работать внутри теневого домика? –

ответ

0

MathJax очень вероятно, пытается найти элемент с помощью querySelector('myDivWithMath'), который не работает, потому что этот селектор не находит элемент.

Вы можете попробовать

MathJax.Hub.Queue(["Typeset",MathJax.Hub,"* /deep/ myDivWithMath"]); 

не используют shadowDOM путем добавления атрибута 'lightdom' к элементу. Это единственная ссылка, которую я нашел, как это сделать How to skip the Shadow DOM (and use the Light DOM) instead for Polymer templates (так и не использовал ее сам).

Смежные вопросы