专注在线职业教育25年
下载APP
小程序
希赛网小程序
导航

关于HTML 5 APIs程序员

责编:何如2015 2015-12-09

    HTML5标准中的APIs

    首先看看W3C的HTML5规范中的APIs。

    多媒体API

    多媒体API是HTML5的多媒体元素中的一部分,其中包括视频和音频元素。这些元素本身实现起来并不复杂,但是这些APIs可以使用JavaScript方法,这是很多人不太了解的。其中包括play()、pause()、load()以及canPlayType()这些方法。许多方法不仅可以使用多媒体类型属性,还可以使用许多其他的属性,这些方法在视频元素中尤其常见。通过在API中使用合适的事件和属性,开发者能够实现多媒体的自定义控制。

    文本轨迹API

    文本轨迹API常常和多媒体API一起配合使用。这个API可以与视频和音频元素的texttracks交互。你可以获取一个多媒体元素的文本轨迹长度或是数量,或者是它的文本轨迹、类型、语言、状态、模式和标签。

    当浏览器使用本地字幕时,这个API就派上用场了,WebVTT就是一个很好的例子。

    拖放功能

    拖放API一直受到很多关注。它最初是随着Microsoft的IE5推出的,现在Firefox、Safari和Chrome都已经支持这一功能了。那么这个API究竟是做什么的呢?

    就像它的名字所说的,这个API在浏览器中实现本地的拖放功能。只需要将一个可拖放属性设置为true,用户就可以移动浏览器中任意一个元素了。你还可以在目标区域加入一些事件句柄,用来告诉浏览器哪些区域能够放置用户拖放的元素。

    如果不局限在浏览器内部使用这一功能,这个API的作用将更加凸显。使用拖放API,用户可以将桌面上的一副图像直接拖入浏览器中,或是将浏览器中的一个新建图标拖到桌面上,并且能够自动加载相应的内容信息形成一个新的应用程序快捷方式。

    历史

    浏览器的后退按钮是一个使用非常频繁的工具。HTML5的历史API(HistoryAPI)可以帮助开发者管理用户的浏览器会话的历史状态。

    以前的历史API只是帮用户回到之前的页面或是之后的页面,以及检查历史信息的长度。而HTML5则加入了增删用户历史信息的方法,可以保存部分数据用于重构一个页面状态,或是更新URL时无需刷新页面。这个API使用起来非常简单,并且可以用它来开发非常复杂的应用程序。

    MIME类型和协议处理程序注册

    这个API允许网站将自己注册成为一些方案的处理程序。下面是一个使用了registerProtocolHandler方法的例子:一个在线电话消息服务可以将自己注册成一个SMS方案的处理程序,这样当用户点击这个链接以后,就能访问它的Web网站(W3CHTML协议)了。

    SMS、TEL和IRC这类方案被列入白名单。网站还可以使用registerContentHandler方法将自己注册为特定内容的处理程序。

    想要了解MIME类型和协议处理程序注册方法,可以先看看HTML5规范。

    WHATWG规范中的APIs

    现在,已经介绍过W3C和WHATWG两个版本HTML5协议中共有的一些标准了。接着将介绍一些附加的APIs,这些APIs被WHATWG收录在正式的协议文档中,而W3C则将他们细分为一些更加易于管理的协议。这两个版本中的APIs用途和主要内容都是相同的。

    Canvas2D环境——可以用来在浏览器中绘图。如果不使用2DContextAPI,canvas将无法绘图。它就像是刷子、调色板和颜料,将所有这些绘图工具都集成在了一起。这个API是非常常用的,几乎所有的canvas文章中都有它的不同方法和事件的介绍。这里还有更加详细的介绍:WHATWGCanvasElement,2DContext以及W3CHTMLCanvas2DContextSpec。

    跨文档和通道的消息通讯——跨文档通讯定义了一种在文档之间通讯的方法,它不受源区域的限制。同样的,通道消息传递使用了独立的代码实现直接通讯。更多介绍:WHATWGHTML,Crossdocumentmessaging、WHATWGHTMLCrosschannelmessaging以及W3CHTML5WebMessagingspec。

    Microdata——在文档中新增了一个语义层,方便搜索引擎、浏览器等可以提取网页信息并提高浏览器的服务质量。更多介绍:WHATWGHTML,Microdata以及W3CMicrodataspec。

    WebWorkers——这是一个在后台运行的JavaScript调用API。它能够在不影响前端界面的情况下长期运行任务,从而避免任务执行造成的页面响应延迟。更多介绍:WHATWGHTML,WebWorkers和W3CWebWorkersSpec。

    Web存储——有点类似于cookies。更多介绍:WHATWGHTML,WebStorage和W3CWebStoragespec。

    WebSockets——允许页面使用WebSocket协议在浏览器和服务器间发送两路消息。更多介绍:WHATWGWebSockets和W3CWebSocketAPI。

    Serversentevents服务器端发送事件——允许服务器以DOM事件的形式向浏览器发送推送通知。更多介绍:WHATWGHTML,Server-sentevents和W3CServer-SentEvents。

    遵循HTML5规范的APIs

    由于篇幅限制,这里不会将所有与HTML5相关的APIs都列举出来。其中一些常常被误以为是HTML5标准APIs的内容有地理位置、索引数据库、选择器,以及文件系统API。

    W3C成员MikeSmith编著了一个全方位介绍web平台和浏览器技术的综合列表,非常值得一读。

    演示示例和浏览器的支持情况

    文章之前提到了部分APIs目前得到浏览器支持的情况,但是浏览器对APIs的支持是在不断变化的,想要了解最新的进展,可以查看caniuse。如果你发现有些APIs目前浏览器尚不支持,也不必灰心。这里还有一个补充功能用来帮助你模拟本地行为。可以查看HTML5CrossBrowserPolyfills了解这一功能。

  更多了解请进入希赛软考网





    相关链接:

  程序员的七种常用武器

一个程序员的职场生活

程序员注意:Java开发最容易犯的21种错误


软考不知道考啥科目?扫码测最适合你的报考科目

企业微信截图_1770345743610.png

               2026年软考各科备考资源精选
资源名称获取方式资源链接
2025年上半年软考各科真题免费下载点击获取
2026年上半年软考各科60天学习计划免费下载点击获取
2026上半年软考各科案例简答题合集免费下载点击获取
2026上半年软考各科三色笔记
免费下载点击获取
2026上半年软考高级科目论文范文免费下载点击获取
2026上半年软考各科免费课程免费学习立即学习
2026上半年软考各科考试题库免费刷题点击刷题
更多软考备考资料请点此查看

热门活动:快来做套软考模拟试卷【考前实战演练】hotgif.gif

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
相关阅读
查看更多

加群交流

公众号

客服咨询

考试资料

每日一练

咨询客服