178

解决Ajax刷新导致代码块不格式化

2015.04.15 没有评论 61次

昨天将WordPress的DEVE主题改到Ajax加载方式,后来发现当文章里面有代码块时不能格式化,我的代码格式化插件用的是SyntaxHighlighter,网上也没有解决方法,很是郁闷。经过研究,发现Ajax方法中用的是 JavaScript的innerHTML方式将文章内容加载到页面中,而页面只会对JS内容在页面首次加载时才会调用,这就导致动态添加的文章内容无法格式化。

经过查看SyntaxHighlighter插件的源码,发现其格式化的方法就只需要调用一个函数即可,我就在调用完innerHTML方法后,再次调用SyntaxHighlighter的格式化方法,页面上的代码块就格式化了,如下:

对于有的方法是写在js文件中的情况,可以动态的在页面上生成一个script节点,插入到页面中,浏览器会对此js重新加载,以达到重新载入js代码的方法,我封装了一个放发,专门用于动态加载js文件,如下:

加载某个js直接调用就可以了



[2015-04-18] 现在换成了crayon-syntax-highlighter插件,需把回调函数里改成

完:本文共609字
  • 本文标题:解决Ajax刷新导致代码块不格式化
  • 本文地址:http://www.jialeens.com/archives/178.html
  • 本站文章除注明转载外,均为本站原创或编译
  • 欢迎任何形式的转载,但请务必以链接形式注明出处,请尊重他人劳动成果
  • 本作品采用 [知识共享署名3.0] 进行许可
下一篇: 没有了,已经是最后文章。
相关文章:
发表评论
icon_wink.gif icon_neutral.gif icon_mad.gif icon_twisted.gif icon_smile.gif icon_eek.gif icon_sad.gif icon_rolleyes.gif icon_razz.gif icon_redface.gif icon_surprised.gif icon_mrgreen.gif icon_lol.gif icon_idea.gif icon_biggrin.gif icon_evil.gif icon_cry.gif icon_cool.gif icon_arrow.gif icon_confused.gif icon_question.gif icon_exclaim.gif