位置: 编程技术 - 正文

使用 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)

  • 车辆购置税计算器公式
  • 一般纳税人印花税的计算公式
  • 专票多少钱
  • 申报更正日期改变会导致逾期申报吗
  • 营改增后建筑业
  • 冲销上月收入
  • 公司购买设备24套
  • 纸箱报废处理怎么做账
  • 代付电费开具发票账务处理
  • 企业购进货物被没收 进项税额能否抵扣?
  • 仓库间的调拨流程
  • 待处理财产损益计入资产负债表哪里
  • 关于解决经费问题的请示
  • 企业结业后实收资本怎么处理?
  • 补发上月工资如何计税
  • 生产调试消耗原材料如何做账?
  • 质量扣款入什么科目
  • Win11怎么不显示图标
  • PHP Warning:PHP Startup: in Unknown on line 0解决办法
  • 支付汽车耗材费怎么入账
  • 特许权使用费属于销售收入吗
  • 纳税申报的流程有哪三步
  • php io操作
  • 二手房交易土增税文件
  • 销售商品取得的货款
  • 残疾人增值税即征即退税收减免备案
  • thinkphp cli
  • 移动加权平均法例题
  • 跆拳道馆怎么盈利
  • php curl_setopt
  • php zmq
  • 应计入利得和损失项目的有
  • 年底计提成本
  • 残保金员工人数怎么算
  • 工程类什么情况下可以三方询价
  • 织梦自定义模型调用
  • 股息红利所得为什么按照分配所得的企业所在地确定
  • 不单独计价的包装物押金计入什么科目
  • 企业收到海河工厂发运的乙材料,并验收入库
  • 合伙企业法人股东税收
  • 小企业长期股权投资减值损失采用直接转销法
  • 非盈利组织固定资产金额标准最新规定
  • 未经加工的
  • 个人所得税不允许核定的行业
  • 堤防维护费税率
  • 出口退税进口退税吗
  • 工程收据怎么开表格
  • 采购付款的会计控制内容有哪些
  • sql常用语句大全简书
  • sqlserver通用的删除服务器上的所有相同后缀的临时表
  • 深度u盘装xp系统教程
  • smss.exe什么意思
  • 苹果mac操作系统名称
  • 怎么删除隐藏文件夹win 10
  • 如何进入win10安装界面
  • mmtray2k.exe有什么作用 是什么进程 mmtray2k进程查询
  • 双硬盘 win10
  • pavkre.exe - pavkre是什么进程 作用是什么
  • win8系统开机怎么进入桌面
  • javascript获取数据类型
  • adt Failed to create the Java Virtual Machine.
  • Cocos2dx3.2 Crazy Tetris update 定时更新 游戏逻辑处理
  • set命令应用
  • css中选择符
  • color 对于当前会话,更改命令提示窗口的前景和背景色
  • 安卓wifi已连接不可上网设置
  • 批量ghost
  • vue中怎么引入css
  • linux中gzip的用法
  • tomcat8.5.8
  • 请问木瓜
  • unity3d物理现象模拟
  • 百旺税控盘口令认证失败PiN被锁
  • 分类所得税和综合所得税的优缺点
  • 宁夏电子税务局官网登录入口首页
  • 增值税申报表如何更正
  • 深圳纳税信息查询
  • 重庆国税税务局官网
  • 中牟地税局电话
  • 国家税务总局服务中心
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设