当前位置: 首页 > news >正文

在vitepress网站添加全局的公告弹窗,以方便告知某些重要通告

例如我的PakePlus官网,如果遇到什么github或者tauri抽风,我就需要全局通知更新一下最新情况,防止大家错过某些重要的消息。这里的逻辑就需要自己配置了,因为vitepress官方并没有这个配置,我的思路就是:使用自定义的js脚本来实现

配置Note源信息

你的通知首先需要知道从哪里获取吧,并且要知道要不要发通知,并且通知内容是什么,都需要根据一个动态文件来实现,对吧

所以在public文件夹中添加一个ppnotes.json的文件,里面的show用于配置是否弹出公告,zh表示公告的内容,支持html文本,openUrl表示当用户点击确定的 时候,自动打开这个url地址,如果为空,就不打开。

配置JS脚本

配置好了源文件,就需要用js来控制这个公告的逻辑了,读取这个ppnotes.json文件,并根据里面的配置来确定是否要弹出公告内容和处理url逻辑,这个js文件我们也放在public中,内容如下:

配置好这个ppweb.js文件后,怎么让网站加载并执行这个逻辑呢?

就是在vitepress中配置加载:这样就好了

 

配置全局样式

配置好前面两步之后,就可以实现弹窗了,但是没有样式,需要给弹窗配置全局样式,然后就可以实现好看的样式了:

源代码可以参考我的开源项目:

https://github.com/Sjj1024/PakePlus

相关文章:

  • 【学习总结】evo工具的一些记录
  • 绕过 GraphQL 暴力破解保护
  • RISC(精简指令集计算机)和CISC(复杂指令集计算机)
  • 【Linux】ghb工具
  • Ubuntu18.04/Mysql 5.7 建立主备模式Mysql集群
  • OpenTiny 体验官实操活动 | 快速体验 TinyVue 组件库的智能化交互能力
  • SQL Server 中 GO 的作用
  • 深入剖析 CVE-2021-3560 与 CVE-2021-4034:原理、区别与联系
  • Zemax光学设计二次成像
  • Web基础关键_003_CSS(一)
  • Dockerfile——AI教你学Docker
  • 创建一个简单入门SpringBoot3项目
  • 桌面小屏幕实战课程:DesktopScreen 13 HTTP SERVER
  • HTTPS hostname wrong: should be <xxx>错误解决
  • Chrome浏览器访问https提示“您的连接不是私密连接”问题解决方案
  • 通信无BUG,ethernet ip转profinet网关,汽车焊接设备通信有心机
  • Windows的xshell连接VW里的centos系统里的mysql失败解决方法
  • algorithm ——————》双指针(移动0 复写0 快乐数 装水问题 以及数组中找几个数和为指定的元组)
  • 智能助手(利用GPT搭建智能系统)
  • 数据库内连接的几种方式及注意事项