jquery.pjax.js局部刷新 prism高亮插件失效的解决办法

问题发现

在解决了使用pjax插件script标签不加载的问题后,发现prism.js高亮插件失效了。

这个问题解决比较简单,只要局部刷新完成时重新加载一下prism.js就可以了。

解决方法

Pjax有几个周期,在每个周期可以自定义要执行的方法:

$(document).pjax("a", '#page', {
    fragment: '#page',
    timeout: 8000,
}).on('pjax:send', function() {
    //pjax发送请求时执行的方法

    //可以在这里实现显示加载中的相关操作,例如:
    $('#loading').fadeIn(300);//显示Loading...
}).on('pjax:complete', function() {
    //pjax请求完毕要执行的方法

    $('#loading').fadeOut(300);//加载完毕隐藏Loading...
    //可以在这里实现页面重新渲染的操作。
    //例如重新调用prism.js的主方法,使其重新渲染页面中的代码块:
    Prism.highlightAll();// 解决Prism.js代码高亮
}

评论

  1. Resdon
    Windows Chrome
    1年前
    2020-2-23 1:37:43

    感谢!帮了大忙 😉

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇