添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

Notification API是浏览器的通知接口,用于在用户的桌面(而不是网页上)显示通知信息,桌面电脑和手机都适用,比如通知用户收到了一封Email。具体的实现形式由浏览器自行部署,对于手机来说,一般显示在顶部的通知栏。

如果网页代码调用这个API,浏览器会询问用户是否接受。只有在用户同意的情况下,通知信息才会显示。

下面的代码用于检查浏览器是否支持这个API。

if ( window . Notification ) { // 支持 } else { // 不支持

目前,Chrome和Firefox在桌面端部署了这个API,Firefox和Blackberry在手机端部署了这个API。

if ( window . Notification && Notification . permission !== "denied" ) { Notification . requestPermission ( function ( status ) { var n = new Notification ( '通知标题' , { body : '这里是通知内容!' });

上面代码检查当前浏览器是否支持Notification对象,并且当前用户准许使用该对象,然后调用Notification.requestPermission方法,向用户弹出一条通知。

Notification对象的属性和方法

Notification.permission

Notification.permission属性,用于读取用户给予的权限,它是一个只读属性,它有三种状态。

  • default:用户还没有做出任何许可,因此不会弹出通知。
  • granted:用户明确同意接收通知。
  • denied:用户明确拒绝接收通知。

Notification.requestPermission()

Notification.requestPermission方法用于让用户做出选择,到底是否接收通知。它的参数是一个回调函数,该函数可以接收用户授权状态作为参数。

Notification . requestPermission ( function ( status ) { if ( status === "granted" ) { var n = new Notification ( "Hi!" ); } else { alert ( "Hi!" );

上面代码表示,如果用户拒绝接收通知,可以用alert方法代替。

Notification实例对象

Notification构造函数

Notification对象作为构造函数使用时,用来生成一条通知。

var notification = new Notification ( title , options );

Notification构造函数的title属性是必须的,用来指定通知的标题,格式为字符串。options属性是可选的,格式为一个对象,用来设定各种设置。该对象的属性如下:

  • dir:文字方向,可能的值为auto、ltr(从左到右)和rtl(从右到左),一般是继承浏览器的设置。
  • lang:使用的语种,比如en-US、zh-CN。
  • body:通知内容,格式为字符串,用来进一步说明通知的目的。。
  • tag:通知的ID,格式为字符串。一组相同tag的通知,不会同时显示,只会在用户关闭前一个通知后,在原位置显示。
  • icon:图表的URL,用来显示在通知上。

上面这些属性,都是可读写的。

下面是一个生成Notification实例对象的例子。

var notification = new Notification ( '收到新邮件' , { body : '您总共有3封未读邮件。' notification . title // "收到新邮件" notification . body // "您总共有3封未读邮件。"

实例对象的事件

Notification实例会触发以下事件。

  • show:通知显示给用户时触发。
  • click:用户点击通知时触发。
  • close:用户关闭通知时触发。
  • error:通知出错时触发(大多数发生在通知无法正确显示时)。

这些事件有对应的onshow、onclick、onclose、onerror方法,用来指定相应的回调函数。addEventListener方法也可以用来为这些事件指定回调函数。

notification . onshow = function () { console . log ( 'Notification shown' );
1、mysql -u root -p '原来的密码'   //进入数据库中2、show databases;3、use mysql;4、使用下面的语句修改密码:    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';         ALTER USER 'root'@'lo...
在安装完数据库后,由于自己不小心直接关闭了安装窗口,或者长时间没有使用root用户登录系统,导致忘记了root密码,这时就需要重置MySQL的root密码。当然,最简单方式自然是删除数据库的data目录,然后重新安装数据库。但是很多时间我们需要保留data目录中的数据,所以就需要查找如何重置root密码。 我们知道,在知道root密码时,可以使用“ALTER USER ‘root’@’local...