文章摘要
文章详细介绍了如何在个人网站中添加并配置pagemap页面地图导航功能。首先,讨论了在post页面引入pagemap.min.js可能出现的问题,如脚本加载顺序问题,并建议将引用放置在主题的inject里或nav.pug文件中。接着,提供了两种方法来实现这一功能,包括在head中添加script标签和在nav.pug文件中添加script标签。文章详细说明了如何在post.pug文件中添加地图元素和相关的JavaScript代码,包括样式和颜色配置。此外,还介绍了如何通过CSS控制地图导航的显示和隐藏,以及如何在滚动时显示地图导航。最后,提供了在滚动时显示和隐藏地图导航的具体代码示例。
样式展示

引入pagemap.min.js
你可以直接引用npm镜像的地址也可以向我一样将其下载下来放到本地使用。项目地址
因为在post页面引入pagemap.min.js会出现各种问题如:post页面script代码先加载而引入代码还在加载中导致找不到函数或者是直接进入post界面加载,返回主页后重新进入post界面不加载,所以我们直接将引用放置在主题的inject里或者是所有界面通用的nav.pug文件里
方法一:
yml
inject:
head:
- <script data-pjax src = "/js/custom/pagemap.min.js"></script>
bottom:
方法二
打开[themes]\layout\includes\header\nav.pug文件,在其中最后添加如下内容:
pug
nav#nav
......
//修改成自己的引用位置
script(data-pjax src=url_for('/js/custom/pagemap.min.js'))
添加pagemap页面地图导航
打开[themes]\layout\post.pug文件,在其中最后添加如下内容:
pug
这里面的颜色你可以自己调试出适合自己网站的颜色,我的夜间模式的颜色调试的不是很好
添加css样式
css
#map {
position: fixed;
top: 0;
right: 0;
width: 84px;
height: 100%;
z-index: 100;
}
此时,pagemap页面地图导航就创建完成了,是一直显示在你的页面上,假如你需要将其隐藏,只有在鼠标移动到上面才显示,你可以修改css,修改如下:
css
/*注意合并规则*/
#map {
opacity: 0;
transition: opacity 0.5s;
pointer-events: none;
}
#map:hover {
opacity: 1;
}
滚动时显示pagemap页面地图导航
假如你已经设置了其隐藏,但是想在滚动的时候显示出来,你可以修改post.pug文件,如下:
打开[themes]\layout\post.pug文件,在最后面添加
pug
这样你就得到了一个在静止时隐藏,滚动时显示的页面地图导航啦
本文是原创文章,采用 CC BY-NC-SA 4.0 协议,完整转载请注明来自 白夜
评论
隐私政策
0/500
滚动到此处加载评论...


