不亮堂什么是polyfill请

假若你是一个SitePoint的老读者何况是自己的观者来讲,那么您早已清楚本身写了不菲关于HTML5以至JS
API的稿子。到近期停止,作者早就发表了有的介绍你以后就足以立刻使用的API,固然大概会用到polyfill的方法。(译注:不晓得怎么是polyfill请点击这里。)

但是后天本身恐怕要打破那一个常规来给我们介绍部分依然还处于刚(Yu-Gang卡塔尔国开始阶段阶段的API。我们必得精晓那一个API是可怜新的,在此多个里头有八个都以在几天早先刚刚宣布的。正因如此,这几个API现如今都还无法利用。不过生龙活虎旦您有乐趣了然它们具体是用来做什么样的,你能够接二连三阅读上边关于它们的详尽介绍,同期也接待留下你的意见和回应。

废话相当的少说,未来开班!

Web Alarms API

Web Alarms
API令你能够配备设施的闹铃设置,进而能够安排公告音讯或让某些特定的选择在钦点的时间点起步。那一个API最杰出的用法会涉及到像时钟,日历,或别的任何索要在一准期刻张开一定操作的程序。

从今2018年上马,那几个API刚刚成为了多个W3C的安排草案。由此全体有待成为W3C官方推荐的有关细节都还在初期阶段。那么些API供给经过window.navigator对象下的alarms属性来使用。alarms属性会提供多个函数:

  • getAll(State of Qatar: 从设备获得全体已部分闹铃并以富含Alarm对象的数组格局重返。
  • add(卡塔尔国: 注册三个依据Date对象的闹铃并赶回二个AlarmRequest对象。
  • remove(卡塔尔国: 通过唯后生可畏ID移除三个事情发生前注册的闹铃(唯生龙活虎性仅针对使用本人)

为了向大家演示理想图景下这一个函数应当如何运用,这里有一个抬高闹铃的事例(请记住现近日别的浏览器都不协助这段代码)

var alarmId;
var request = navigator.alarms.add(
    new Date("June 29, 2012 07:30:00"),
    "respectTimezone",
);

request.onsuccess = function (e) {
    alarmId = e.target.result;
};

request.onerror = function (e) {
    alert(e.target.error.name);
};

意气风发经你想要驾驭越多关于Web Alarms
API,请参阅有关细节文书档案。

Presentation API

Presentation
API的靶子就是让投影仪或电视机那样的第二展现设备可以被Web使用,包罗具备通过有线(HDMI,DVI等)连接以致经过有线(MiraCast,
Chromecast, DLNA,
AirPlay等)的设施。那么些API所做的正是在乞求页面与第二显得设备上的身体力行页面之间达成新闻互通。

请精心该API细节并不归属W3C标准,也不在W3C规范安顿当中。这几个API须要经过window.navigator对象下的presentation属性来使用。该属性提供了贰个叫requestSession(卡塔尔(قطر‎函数,以致present和availablechange八个事件。requestSession(State of Qatar函数能够用来运维或苏醒第二出示设备上的以身作则。它会回来二个session对象指代当前的亲自去做。当通过requestSession(卡塔尔(قطر‎传入的url里面包车型大巴示范内容被加载成功后,演示荧屏的页面会收到present事件。最后,在首先张演示现身后照旧最后一张演示实现后会发出availablechange事件。

比如,来自细节文书档案,该API的用法如下所示:

<button disabled>Show</button>

<script>
var presentation = navigator.presentation,
    showButton = document.querySelector('button');

presentation.onavailablechange = function(e) {
  showButton.disabled = !e.available;
  showButton.onclick = show;
};

function show() {
  var session = presentation.requestSession('http://example.org/');

  session.onstatechange = function() {
    switch (session.state) {
      case 'connected':
        session.postMessage(/*...*/);
        session.onmessage = function() { /*...*/ };
        break;
      case 'disconnected':
        console.log('Disconnected.');
        break;
    }
  };
}
</script>

后生可畏旦你想要领会更加多关于Presentation
API的音讯,能够看看最后报告。

Standby API

Standby
API让您能够在顶层浏览器页面中呼吁显示屏持续显示锁。这足防止备设备步入省电状态(比如显示器自动关闭)。那一个职能对有个别web应用来讲任重(Ren Zhong卡塔尔而道远。比如,想像一下你正在行驶并在四哥伦比亚大学上行使基于web的领航软件(非本地应用)。借使您不去触碰显示器的话,你的无绳电话机的显示屏会自行关闭,除非你在此之前在哥哥大上拓宽过有关的设置。在如此的景色下,平日你是想要让荧屏保持展现状态的。那偏巧是以此API适用的地点。

其风流倜傥API要求通过window.navigator对象下的wakeLock属性来接纳。它会提供五个函数:

  • request(卡塔尔(قطر‎: 使当前应用能让显示屏保持呈现状态。
  • release(卡塔尔: 释放持续展现锁,那样显示屏就不会再被胁持须求出示。
    那五个函数都只选取一个参数,其只好是“screen”或“system”。前面二个表示操作针对的是器材显示屏,而前者针对的是除荧屏之外如CPU或播报之类的此外装置能源。

以下例子会躬体力行怎样适用该API让设备显示屏保持展现状态:

navigator.wakeLock.request("display").then(
    function successFunction() {
        // do something
    },
    function errorFunction() {
        // do something else
    }
);

要让设备允许显示器关闭,我们能够用以下情势:

navigator.wakeLock.release("display");

设若您想要了然有关斯坦dby
API的越多消息,能够参照他事他说加以考察这几个非官方草案。

总结

在此篇著作里笔者给大家介绍了黄金年代部分全新的JS
API。作者要重复强调因为它们都还地处非常早期的等第,所以如今并未有浏览器援助。因而大家也没有办法实际地操作它们。可是正因为它们如此之新我们以后都有时机跟进它们接下去的提升依旧参预救助它们的底细设计的布帆无恙。

Web开辟的以往一片光明,加入进来吧!

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website