记录一次因为 pjax 导致 js 无法生效以及解决方案
简介
pjax 是一个 jQuery 插件,它通过拦截链接事件,然后包装成一个 ajax 请求,实现只刷新部分更新的页面,避免重复请求,以达到节省服务器带宽消耗的效果。在魔改分类的时候发现有时候 js/css 不生效,很奇怪,后来找了许久才找到是 pjax 的问题,根据洪哥的 pjax 解决方案来完美解决失效问题。
发现问题
魔改分类 / 标签时发现横向滚动死活不生效:
解决过程
没办法用笨方法查看 js 是否生效:
控制台没有打印:
后来想到 pjax 无刷的效果,猜想是否就是因为 pjax 的原因,关掉 pjax 后还是不行,看看大佬是怎么解决,巧了洪哥刚好写了
解决方案:pjax 无法生效解决办法,butterfly 主题维护你的 pjax | 张洪 Heo
莫名其妙地解决了离离原上谱
哦对了,css 不用引入 data-pjax="" defer=""
参考文章
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 枫叶!
评论
pjax 我当时也没搞懂,于是去看了一下文档,发现了文档中这样一个用例,于是我就一直在用这个方法🤣
function whenDOMReady() {
// 此处填写需要执行的代码,如:
// leonus.demo()
}
whenDOMReady() // 打开网站之后先执行一次函数
document.addEventListener("pjax:complete", whenDOMReady) // 每次pjax加载完成之后执行上面函数
Android 13
Microsoft Edge 106.0.1370.52