構文の強調表示に highlight.js を使用しようとしていますが、最初の読み込みでしか機能しません。
HTML:
<script type="text/x-handlebars" id="post">
{{#if html}}
{{rawhtml html}}
{{else}}
{{#each section}}
{{rawhtml this}}
{{/each}}
{{/if}}
</script>
didInsertElement を使用すると、一度しか起動できません。
App.PostView = Ember.View.extend({
didInsertElement: function () {
hljs.initHighlightingOnLoad();
}
});
デモ: http://jsbin.com/iKUrUWO/4 Code に移動し、次に 'CSS Best Practices' に移動します。ブラウザを更新します。構文の強調表示が表示されます (ピンクと紫)。「ファイルの命名」に移動して戻ります。これでコードは白に戻りました。
JSBIN: http://jsbin.com/iKUrUWO/4/edit?html,js
注: {{each}} ヘルパーのブロックレス形式を使用しようとしましたが、成功しませんでした。
<script type="text/x-handlebars" id="post">
{{each controller postViewClass="App.PostView"}}
</script>
App.PostView = Ember.View.extend({
template: Ember.Handlebars.compile('{{#if html}}{{rawhtml html}}{{else}}{{#each section}}{{rawhtml this}}{{/each}}{{/if}}'),
didInsertElement: function () {
hljs.initHighlighting();
}
});
そしてなぜか使えないthis.$().hljs.initHighlighting();
。
私は混乱し始めているので、助けていただければ幸いです!ありがとう!