详解如何让InstantClick兼容MathJax、百度统计等


Posted in Javascript onSeptember 12, 2017

之前有网友提及博客上的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的重新运行。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery 高亮显示文本中重要的关键字
Dec 24 Javascript
关于图片的预加载过程中隐藏未知的
Dec 19 Javascript
判断js中各种数据的类型方法之typeof与0bject.prototype.toString讲解
Nov 07 Javascript
jquery动态分页效果堪比时光网
Sep 25 Javascript
JS通过ajax动态读取xml文件内容的方法
Mar 24 Javascript
分享jQuery网页元素拖拽插件
Dec 01 Javascript
模拟javascript中的sort排序(简单实例)
Aug 17 Javascript
原生js实现可拖拽效果
Feb 28 Javascript
Ionic3 UI组件之Gallery Modal详解
Jun 07 Javascript
解决IOS端微信H5页面软键盘弹起后页面下方留白的问题
Jun 05 Javascript
ES6 Generator函数的应用实例分析
Jun 26 Javascript
微信小程序实现一张或多张图片上传(云开发)
Sep 25 Javascript
使用InstantClick.js让页面提前加载200ms
Sep 12 #Javascript
VueJs组件prop验证简单介绍
Sep 12 #Javascript
js字符限制(字符截取) 一个中文汉字算两个字符
Sep 12 #Javascript
67 个节约开发时间的前端开发者的工具、库和资源
Sep 12 #Javascript
react-native DatePicker日期选择组件的实现代码
Sep 12 #Javascript
JavaScript中递归实现的方法及其区别
Sep 12 #Javascript
详解react-native-fs插件的使用以及遇到的坑
Sep 12 #Javascript
You might like
谈谈PHP语法(2)
2006/10/09 PHP
浅析php数据类型转换
2014/01/09 PHP
PHP等比例压缩图片的实例代码
2018/07/26 PHP
Avengerls vs Newbee BO3 第一场2.18
2021/03/10 DOTA
jQuery 性能优化手册 推荐
2010/02/23 Javascript
体验js中splice()的强大(插入、删除或替换数组的元素)
2013/01/16 Javascript
基于jQuery实现在线选座之高铁版
2015/08/24 Javascript
JavaScript精炼之构造函数 Constructor及Constructor属性详解
2015/11/05 Javascript
正则表达式优化JSON字符串的技巧
2015/12/24 Javascript
javascript仿百度输入框提示自动下拉补全
2016/01/07 Javascript
微信小程序 数组中的push与concat的区别
2017/01/05 Javascript
vue+ElementUI实现订单页动态添加产品数据效果实例代码
2017/07/13 Javascript
基于vue实现微博三方登录流程解析
2020/11/04 Javascript
python 生成目录树及显示文件大小的代码
2009/07/23 Python
从零学Python之入门(五)缩进和选择
2014/05/27 Python
Python格式化输出字符串方法小结【%与format】
2018/10/29 Python
python匹配两个短语之间的字符实例
2018/12/25 Python
python 实现图片裁剪小工具
2021/02/02 Python
一款基于css3的动画按钮代码教程
2014/11/23 HTML / CSS
高清屏中使用Canvas绘图出现模糊的问题及解决方法
2019/06/03 HTML / CSS
Clearly新西兰:购买眼镜、太阳镜和隐形眼镜
2018/04/26 全球购物
沙龙级头发造型工具:FOXYBAE
2018/07/01 全球购物
时尚圣经:The Fashion Bible
2019/03/03 全球购物
英国现代市场:ARKET
2019/04/10 全球购物
医学生实习自我鉴定
2013/09/27 职场文书
护理职业生涯规划书
2014/01/24 职场文书
安全伴我行演讲稿
2014/09/04 职场文书
销售内勤岗位职责范本
2015/04/13 职场文书
2015年社区统计工作总结
2015/04/21 职场文书
体检通知范文
2015/04/21 职场文书
2015年档案管理员工作总结
2015/05/13 职场文书
电影开国大典观后感
2015/06/04 职场文书
一百条裙子读书笔记
2015/07/01 职场文书
安全教育日主题班会
2015/08/13 职场文书
2016年5月份红领巾广播稿
2015/12/21 职场文书
Python实现byte转integer
2021/06/03 Python