這次帶給大家InstantClick怎麼設定才能相容MathJax與百度統計等,InstantClick設定相容MathJax與百度統計等的注意事項有哪些,以下就是實戰案例,一起來看一下。
之前有網友提及部落格上的LaTex(由MathJax實現)壞掉了,原因是這裡使用了instantclick,以達到網頁秒開的效果。但由於instantclick不會重新執行位於head部分的JavaScript程式碼,而許多工具性軟體,例如MathJax、百度統計、Google Analytics、Google Code Prettify等軟體都是直接將JS檔案插入head區域。這導致這些工具在instantclick點擊後失效,需要重新設定。
配置並不複雜,這些工具本身的程式碼不用做任何修改,該怎麼放還怎麼放。但在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 百度统计 _hmt.push(['_trackPageview', location.pathname + location.search]); if (typeof ga !== 'undefined') // support google analytics ga('send', 'pageview', location.pathname + location.search); } }); InstantClick.init(); </script>
這段程式碼的意思是每次頁面重載時,透過直接的函數呼叫來實現MathJax、百度統計、Google Code Prettify、Google Analytics的重新運行。
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是InstantClick怎麼設定才能相容MathJax與百度統計等的詳細內容。更多資訊請關注PHP中文網其他相關文章!