使用JavaScript实现网页通知功能

如何使用js来实现网页通知功能。即使在用户浏览其他页面时,也能向他们推送通知信息。

废话不多说直接上代码

typescript 复制代码
function showAutoNotification() {
  if ("Notification" in window) {
    Notification.requestPermission().then(function(permission) {
      if (permission === "granted") {
        var notification = new Notification("重 要 通 知", {
          body: "具体通知内容",
        });
        console.log("hook 200");
        setTimeout(function() {
          notification.close();
        }, 5500000);
        notification.onclick = function() {
          window.open("https://pan.zai1.com");
        };
      } else {
        alert("请打开网站通知,以便接收本站最新的消息。");
        console.log("当前浏览器禁止了网站推送");
      }
    });
  } else {
    console.log("当前浏览器不支持tuisong.js 请联系在意博客");
  }
}

setTimeout(showAutoNotification, 100);

代码解析如下:

检查浏览器是否支持Notification API。如果不支持,输出一条消息并停止执行。

请求用户的通知权限。

如果用户同意接收通知,创建并显示一个通知。通知的标题为"重 要 通 知",内容为"在意网盘,不限内容的网盘 pan.zai1.com"。

创建通知后,输出 "hook 200"。

5500000毫秒(约为91分钟)后,通知自动关闭。

如果用户点击通知,会打开"https://pan.zai1.com"这个网址。

如果用户没有同意接收通知,弹出一个提示对话框,并输出一条消息。

本函数被设置为在页面加载后的100毫秒后执行。

相关推荐
月下点灯2 分钟前
uniapp仿抖音评论区popup对话框实现(多端兼容)
前端·javascript·vue.js
江城开朗的豌豆12 分钟前
React的渲染时机:聊透虚拟DOM的更新机制
前端·javascript·react.js
掘金安东尼39 分钟前
使用 Web Components 与 CSS Modules 构建原生应用架构
javascript·后端·面试
Moment1 小时前
Next.js 15.5 带来 Turbopack Beta、Node 中间件稳定与 TypeScript 强化 🚀🚀🚀
前端·javascript·react.js
yzzzzzzzzzzzzzzzzz2 小时前
初识javascript
前端·javascript
你的人类朋友11 小时前
【Node&Vue】JS是编译型语言还是解释型语言?
javascript·node.js·编程语言
烛阴11 小时前
TypeScript高手密技:解密类型断言、非空断言与 `const` 断言
前端·javascript·typescript
样子201812 小时前
Uniapp 之renderjs解决swiper+多个video卡顿问题
前端·javascript·css·uni-app·html
黑客飓风12 小时前
JavaScript 性能优化实战大纲
前端·javascript·性能优化
YeeWang15 小时前
🎉 Eficy 让你的 Cherry Studio 直接生成可预览的 React 页面
前端·javascript