位置: 编程技术 - 正文

使用 Javascript 实现浏览器推送提醒功能的示例(js怎么用)

编辑:rootadmin

推荐整理分享使用 Javascript 实现浏览器推送提醒功能的示例(js怎么用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript运用,js应用实例,js如何使用,js怎么使用,如何用javascript,js如何使用,如何用javascript,javascript怎么用,内容如对您有帮助,希望把文章链接给更多的朋友!

本篇文章内容简单,速读只需两三分钟,通过这两三分钟的时间你就可以给自己的网站实现推送提醒的功能

Notification 类

简单明了,这个类就是负责推送消息的,只要用户当前没有关闭页面,及时是在使用其他程序,浏览器也能够将消息推送给用户

请求权限

我们在手机上都收到过消息推送,在接收推送之前我们会先将消息推送权限开放给应用。在浏览器中也一样,在使用浏览器推送之前,需要先获取权限

通过 requestPermission 方法可以为当前域名请求消息推送的权限,这个方法可以使用 Promise 语法来实现请求结果的处理。当然,你也可以使用回调的方式来实现

回调的参数 permission 表示当前请求后用户的选择:允许推送 / 不允许推送,它的值也分别有两个 granted / denied,当我们发现用户不允许的推送的时候,就可以在回调中做出相应的提示,告诉用户可能会导致不能及时接收消息,并且告诉用户如果想要接收消息该如何操作等

查看权限

由于推送的权限是基于域名的,因此同一个网站在请求一次权限后,下一次打开时就不会再次请求,而是直接通过第一次的用户选择来决定网站是否能向用户推送

使用 Javascript 实现浏览器推送提醒功能的示例(js怎么用)

因此我们就需要能够获取到当前网站的推送的状态,可以通过下面的这个属性来获取状态:

permission 属性的值有三种:granted - 允许推送;denied - 拒绝推送;default - 还未申请权限

当值为 default 时,我们就可以向用户请求推送的权限了

发起一条推送

通过上面的方式可以声明一条推送,它有两个参数,第一个参数是消息的标题,这个是必填的一个参数;而通过第二个选填参数,我们则可以实现更多自定义的显示内容:

第二个参数接收一个对象,它有一下几个属性:

body:推送的主体内容 tag:推送的标识,如果我们声明了多个 Notification,而这些推送的 tag 都相同,则只会推送一次 icon:需要在推送中显示的图标的 URL data:推送的消息所带有的数据信息,当用户点击推送窗口时,可以通过这些信息为用户展示相应的内容 requireInteraction:正常情况下,推送发出后若用户没有操作,几秒后就会消失,而将该属性设为 true 则可以让推送始终维持而不消失,默认值是 false

当我们需要自定义推送显示时长的时候,可以通过最后一个属性将自动消失关闭,然后配合 note.close() 和 setTimeout 方法人为控制推送时长

点击推送事件

既然已经可以成功的发起一条推送,那么该如何监听到用户是否点击了这个推送呢?很简单,通过 onclick 属性就可以实现

其他

需要注意的是,并不是所有浏览器都支持 Notification,所以在使用前需要先检测能否使用

或许有的小伙伴会想,这个功能不错,这样在手机上也能实现网页消息推送了。然而很不幸的是,移动端浏览器几乎%不支持 Notification :(

标签: js怎么用

本文链接地址:https://www.jiuchutong.com/biancheng/369723.html 转载请保留说明!

上一篇:React.Js添加与删除onScroll事件的方法详解(react增删改查功能)

下一篇:原生JavaScrpit中异步请求Ajax实现方法(原生java web)

  • 增值税附加税怎么填
  • 进项税额转出如何申报
  • 金税盘维护费抵税账务处理
  • 收了押金不退
  • 物料损失怎么入账
  • 收入支出结余公式原理
  • 个体户一直零申报会不会罚款
  • 会计核算制度的案例
  • 固定资产年数总额法
  • 公司购买软件著作权
  • 房屋估价入账需要计算什么税款?
  • 亏损企业净资产负债率
  • 失业稳岗补贴要交所得税吗
  • 退款给客户怎么记分录
  • 酒店客房主营业务支出明细表怎么写
  • 金税盘与税控盘及报税盘怎么区分
  • 生育津贴需要缴纳五险一金吗
  • 分红 实缴比例
  • 办公用品普通发票的会计分录
  • 电子税务局首次申请专票
  • 材料的盘点包括
  • 在win11
  • 手游穿越火线怎么设置自动开火
  • 怎么删除win10开机多余选项
  • php 静态
  • 残疾人就业保障金怎么申报
  • 1.exe是什么文件
  • html 调用扫码
  • vue.js前端
  • PHP:mcrypt_enc_get_iv_size()的用法_Mcrypt函数
  • 销售过程会计核算实训过程
  • 固定资产加速折旧方法
  • php开发实例大全
  • php对数组进行排序
  • 退回以前年度税费
  • 外管证预缴税费怎么算
  • 工会经费免征三年的文件山东
  • 建行E信通贴现需要发票吗
  • 收到保险公司的车赔款会计分录怎么写
  • 持续经营利润是什么意思
  • 企业年度报告包括哪些内容
  • 风险资本生存概率
  • dom事件种类
  • 合伙股权退出机制
  • mysql中事务的作用
  • 如何保护数据库
  • 超出python用什么
  • 国家研发费用补助
  • 使用SQL server创建数据库和表
  • 管理费用税金包括
  • 利得和损失计入所有者权益的情况
  • 医疗投资机构的定义
  • 油票发票在报销单上怎么填写
  • 小规模免征增值税的有哪些
  • 政府补助的内容
  • 应付账款余额为0怎么写
  • 租赁车子
  • 施工图审查费计算公式
  • 中小企业会计建议和意见
  • mysql5717安装及配置超详细教程
  • win8设置怎么打开
  • win10 bios模式
  • 开启windows远程桌面服务
  • centos怎么设置密码
  • explorer.exe进程文件
  • 虚拟机怎样用
  • yum下载已安装的包
  • scheduler.exe - scheduler是什么进程 有何作用
  • win10系统如何设置不休眠
  • 局域网下访问vue点击无反应
  • 最新版win10版本号
  • android 数据库app
  • socket教程pdf
  • 全面理解和准确把握新时代党的建设总要求心得体会
  • 轻松实现的英文
  • 辽宁省国税局网站
  • 已经开具的专用发票
  • 行政服务事项包含哪些
  • 云南国家税务网上开票赋码
  • 电动车验车流程及注意事项
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设