位置: 编程技术 - 正文

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

  • 小规模纳税人取得增值税
  • 进项税为什么记在借方通俗讲法
  • 划拨房二次出售缴纳出让金吗
  • 固定资产报废的账务处理例题
  • 广告媒体类的企业怎么核算成本?
  • 增值税可以抵扣企业所得税吗
  • 企业内部员工稿费
  • 银行汇票多余款收账通知怎么做记账凭证
  • 增值税发票没有地址和开户行有效吗
  • 通信服务费可以取消吗
  • 申报退税金额是0是怎么回事
  • 工资报税怎么报的原则
  • 三证合一后章要换吗
  • 股东入资印花税怎么计算
  • 税控机减免会计分录
  • 购入商品入库时发现实收物多余应收数计入什么科目
  • 图书发票票样
  • 子公司借款给母公司是否受2:1
  • 金税盘增值税减免税申报明细表怎么填
  • 采购开票税率
  • win 11 发布
  • 京东白条账单制和订单制是什么样的
  • 金税四期查到了怎么办
  • 公司上市前缩股
  • 如何突出显示一行中的最小值
  • 房地产企业增值税怎么计算
  • 谷歌网页小恐龙
  • PHP:mcrypt_enc_is_block_algorithm()的用法_Mcrypt函数
  • 销售机构人员工资属于管理费用吗
  • vue-router跳转
  • 有关预收账款的会计科目
  • 科罗拉多州位置
  • 详解php匿名函数
  • 心形岛屿叫什么名字
  • php反射获取方法参数
  • php处理异常
  • Php实现注解注入
  • php开启mysql扩展
  • 出口抵减内销产品应纳税额怎么结转
  • 税款已缴纳后发票怎么查
  • 培训费开票属于哪个征收明目
  • 房子补偿款
  • 收到汽车会计分录
  • 企业变更法人的原因怎么写
  • 可以报销的票据种类
  • 补缴以前年度所得税怎么做会计分录
  • 接受非货币性资产投资入账价值
  • 挂靠在运输公司的车辆为什么要记入"固定资产"科目?
  • 安全生产费会计准则
  • 实缴增值税比计提增值税少怎么做账务处理
  • 哪些费用不得计税
  • 员工在异地缴纳社保,公司还能上吗
  • 工程结算价超过合同价10%
  • 应收账款转营业外支出
  • 摊销本月的广告费合理吗
  • 固定资产折旧完了怎么做账
  • 会计及库管岗位职责(要求)
  • 解析视频
  • mysql的基础知识
  • 存储过程怎么理解
  • linux me
  • 强缓存标志
  • win7文件后缀名不全显示
  • cocos2dx drawcall优化
  • 图文详解地理图册电子版
  • javascript居中
  • CCProgressTimer 进度条动画在cocos2dx+lua中的使用
  • linux定时执行任务
  • jquery 列表实现
  • Python中time模块中的方法
  • js引用传递
  • 解决jQuery ajax请求在IE6中莫名中断的问题
  • 北京海淀大集一览表?
  • 企业所得税税率10%
  • 南京退林还耕
  • 宁波车管所作息时间
  • 党员参观红色教育基地活动的意义
  • 鸿蒙2.0哪个版本续航好
  • 棚户区改造的回迁房能办房产证吗
  • 明星征税多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设