在ember中使用highlight.js
Using highlight.js in ember
我的ember应用程序设置了左侧的帖子列表和右侧的单个帖子视图。当点击左边的一个帖子时,它的内容将呈现在右边的视图中。
这是我用来给文章添加语法高亮显示的代码。
App.PostView = Ember.View.extend({
didInsertElement: function() {
$('pre code').each(function(i, e) {hljs.highlightBlock(e)});
}
});
当第一个帖子视图被渲染时,它有语法高亮显示,但是当我点击另一个帖子,它的内容被加载到帖子视图时,语法高亮显示不被应用。我怎样才能使高亮应用于每次渲染的帖子?
没有更全面的例子,我只能猜测。右面板中生成的是PostView
吗?如果是这样,那么你需要约束你的视图渲染到视图内部的东西。
在您的示例中,$('pre code')
将针对文档中的所有pre code
元素。试试this.$('pre code')
,或者任何需要在视图中突出显示的元素/选择器。
这可能不是最干净的方法,但您可以尝试将观察者添加到控制器模型中,并进行必要的更改。但这只会在模型本身发生变化的情况下起作用。
:
postHasChanged: function() {
if (this.get('state') === 'inDOM') {
$('pre code').each(function(i, e) {
hljs.highlightBlock(e)
});
}
}.observes('controller.model')
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 使用agility.js进行页面布局和合成
- 使用Clipboard.js复制span文本
- Highlight.js为每个<代码>标签
- 如何将highlight.js与Rails结合使用
- 尝试将highlight.js集成到一个使用requirejs的angular应用程序中
- ng-bind-html and highlight.js
- 显示C#<摘要>使用Highlight.js的Jekyll Github页面中的标记
- window.open、源代码查看器和highlight.js
- Highlight.js and IE8 error
- jQuery highlight.js modification
- AngularJS和Highlight.js的动态语法高亮显示
- jQuery current-menu-item-highlight与js anylink菜单串联
- 如何在使用highlight.js时指定语言
- 如何使highlight.js在一个页面中的多个数据表中工作
- 在ember中使用highlight.js
- 为非预容器配置highlight.js
- 如何在highlight.js中使用timymce
- 使用wicked_pdf时,在Heroku中没有正确转义Highlight.js
- Highlight a specific part in <textarea> using JS