■ HTML5 API

HTML5ではさまざまなAPI(Application Programming Interface)が規定されました。
しかしHTML5で規定されたAPIは新しいものも数多くありますが、すべてが新規で策定されたわけではありません。

JavaScriptを利用して使っている機能の中には、ブラウザベンダーが独自で実装した機能が多くあり
他ブラウザベンダーが同じように実装したことでスタンダードになった機能もあります。

高度なウェブアプリケーションを実現するには、APIは必要不可欠になってきていますが
このような高度な機能を組み込むにもブラウザが異なれば実装方法も異なり、標準化が進んでいませんでした。

そこでHTML5では、これまでの定着した機能と新しい機能とを再定義し『HTML5 API』として仕様策定しています。

HTML5 APIは基本的にJavaScriptを利用して実装するのが基本となります。


■ HTML5 APIの種類

HTML5 APIを利用することで、より高度な機能をウェブアプリケーションにウェブ標準として実装することが可能になります。

HTML5と一般に言われてもHTML5仕様から独立したAPIや、それに関連するAPIもあります。
Application Cache(Offline Web Application)
キャッシュマニフェストを指定することでインターネットに接続していないオフライン状態でも
Webアプリケーションを利用できるようにする。

Audio&Video
音声と映像を扱う。

Canvas
JavaScriptで2Dグラフィックスを扱う。

Drag&Drop
ドラッグ&ドロップ専用のイベントやAPIを利用して、JavaScriptだけでドラッグ&ドロップ機能を実現できる。

File
JavaScriptでローカルファイルにアクセスするAPI

Geolocation
JavaScriptで位置情報を取得するAPI。

Indexed Database
Web Storageと同様、ブラウザーにデータを保存する機能。SQLを利用しないリレーショナルデータベースを利用可能にする。

SVG(Scalable Vector Graphics)
XMLでベクターグラフィックを扱う。

Text Selection/Editing
ページ上に表示されているテキスト編集を可能にする。

Web Sockets
サーバーと双方向に通信するためのAPI。XMLHttpRequest(Ajax)を利用すれば非同期通信が可能だったが、
サーバーから任意のタイミングでデータをクライアントに送信することが可能となる。

Web SQL Database
ローカル環境にデータを保存してSQLの使えるリレーショナルデータベースを可能にする。
(仕様中止)

Web Storage
Cookieで扱うことができなった大容量のデータをブラウザーに保存でき、JavaScriptでそのデータにアクセスできる。
これによりオフライン機能をアプリケーションに組み込むことが可能。

Web Workers
JavaScriptの処理をバックグラウンドで実行する技術。これまで重い処理をすると処理が終わるまでブラウザーが固まってしまったが、
バックグラウンドで実行されるためユーザーは操作が可能となる。