詳解如何讓InstantClick兼容MathJax、百度統(tǒng)計等
之前有網(wǎng)友提及博客上的LaTex(由MathJax實現(xiàn))壞掉了,其原因是這里使用了instantclick,以達到網(wǎng)頁秒開的效果。但由于instantclick不會重新運行位于head部分的JavaScript代碼,而很多工具性軟件,比如MathJax、百度統(tǒng)計、Google Analytics、Google Code Prettify等軟件都是直接將JS文件插入到head區(qū)域。這導(dǎo)致這些工具在instantclick點擊后失效,需要重新配置。
配置并不復(fù)雜,這些工具本身的代碼不用做任何修改,該怎么放還怎么放。但在InstantClick.init();之前添加以下代碼:
<script data-no-instant>
InstantClick.on('change', function(isInitialLoad) {
if (isInitialLoad === false) {
if (typeof MathJax !== 'undefined') // support MathJax
MathJax.Hub.Queue(["Typeset",MathJax.Hub]);
if (typeof prettyPrint !== 'undefined') // support google code prettify
prettyPrint();
if (typeof _hmt !== 'undefined') // support 百度統(tǒng)計
_hmt.push(['_trackPageview', location.pathname + location.search]);
if (typeof ga !== 'undefined') // support google analytics
ga('send', 'pageview', location.pathname + location.search);
}
});
InstantClick.init();
</script>
這段代碼的含義是每次頁面重載時,通過直接的函數(shù)調(diào)用來實現(xiàn)MathJax、百度統(tǒng)計、Google Code Prettify、Google Analytics的重新運行。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
BootStrap.css 在手機端滑動時右側(cè)出現(xiàn)空白的原因及解決辦法
這篇文章主要介紹了BootStrap.css 在手機端滑動時右側(cè)出現(xiàn)空白的原因及解決辦法的相關(guān)資料,非常不錯具有參考借鑒價值,需要的朋友可以參考下2016-06-06
bootstrap插件treeview實現(xiàn)全選父節(jié)點下所有子節(jié)點和反選功能
這篇文章主要為大家詳細介紹了bootstrap插件treeview實現(xiàn)全選父節(jié)點下所有子節(jié)點、反選功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07
D3.js實現(xiàn)餅圖,環(huán)圖,玫瑰圖的繪制
這篇文章主要為大家介紹了如何利用D3.js中的d3.pie和d3.arc實現(xiàn)餅圖、環(huán)圖和玫瑰圖的繪制,文中的實現(xiàn)方法講解詳細,感興趣的可以嘗試一下2022-11-11

