Hexo NexT Muse 保持边栏常驻
status
category
date
summary
slug
icon
tags
password
更新 Hexo Next 主题到 7.0 以上之后,发现点击空白区域,或者点击图片放大时,侧边栏会自动收回。个人不太喜欢这个特性,Github 上也有一些用户在抱怨:
开发者采取了一刀切的方式,并没有设置可配置参数,于是自己修改一下 js 文件,记录过程如下。
首先打开自己的主页,利用 Chrome 的开发者模式,切换到
Elements -> Event Listeners
,通过 remove 监听器,再点击空白区域,筛选出这个点击事件的监听器。我的版本是在mouseup -> Window(muse.js:44)
。打开
themes/next/source/js/schemes/muse.js
,找到这部分代码,然后把监听器中隐藏边栏的代码注释掉:虽然达到了目的,但我仍然有点困惑。从代码来看,开发者明确了隐藏边栏的触发条件,即点击空白区域或点击图片放大,实在是想不到这样做是为了什么,解决了什么问题,或者想要提供什么特性。
hexo clean 然后部署之后,本地刷新仍然没有生效,于是想到可能是浏览器缓存的问题。在 Network 里看到返回码果然是 304 协商缓存,这里有三种方法可以获得最新的资源文件:
- 利用浏览器清除浏览数据,但缓存时间难以判断
- 开发者工具,Network,勾选 Disable cache,刷新
- command + shit + R,强制刷新
更新博客的同时又复习了浏览器缓存机制,学到很多。
Loading...