配置说明
引入的新文件
请将下述文件放置于 source 目录中的合适位置,并根据您的需要调整对应的配置参数。在此处我们使用的是 effects
目录。
leave-event.js1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| (() => { const leaveDelay = 30; const leaveFavicon = null; const leaveTitle = "{{{(>_<)}}}哦哟,崩溃啦~"; const returnTitle = "(*´∇`*)欸,又好啦~";
let originTitle = ""; const saveTitle = () => { originTitle = document.title; };
let inactiveTimeout = null; const siteFavicon = document.querySelector('[rel="icon"]'); const originFaviconUrl = siteFavicon.getAttribute("href"); document.addEventListener("visibilitychange", (ev) => { if (ev.target.hidden) { inactiveTimeout = setTimeout(() => { document.title = leaveTitle; if (leaveFavicon) { siteFavicon.setAttribute("href", leaveFavicon); } inactiveTimeout = null; }, leaveDelay * 1000); } else { if (inactiveTimeout !== null) { clearTimeout(inactiveTimeout); inactiveTimeout = null; } else { document.title = returnTitle; if (leaveFavicon) { siteFavicon.setAttribute("href", originFaviconUrl); }
setTimeout(() => { document.title = originTitle; }, 2000); } } });
saveTitle(); window.addEventListener('pjax:complete', saveTitle); })();
|
更新的配置项
需要更新 additional_injections
,加入以下内容:
1 2 3
| additional_injections: after_footer: | <script src="/effects/leave-event.js"></script>
|
假设您把上述的文件放置在 source 目录的 effect 目录中,且您的站点配置为根目录模式,那么您应当可以通过上述的路径 /effect/leave-event.js
访问到对应的文件。如果您使用的是其他配置,您需要对应调整这个路径。
当您配置完成后重启 Hexo ,您应当可以看见效果生效。