ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
本稿は HTML5 が提供する API に関する記事です。API は Application Programming Interface の略で、アプリケーションを実装する際に必要な機能をまとめて呼び出せるよう用意されたインタフェースのことです。HTML5 では、ブラウザネイティブで高度な機能を扱えるよう、多数の Web API が追加されました。
HTML5 で導入された主な API
| API | 用途 |
|---|---|
| Canvas API | <canvas> に 2D 図形を描画 (ゲーム・グラフ等) |
| WebGL | GPU を使う 3D グラフィック (OpenGL ES 互換) |
| Audio / Video | <audio> <video> 要素とその JS API |
| Geolocation API | 位置情報の取得 (GPS / Wi-Fi 推定) |
| Web Storage | localStorage / sessionStorage |
| IndexedDB | クライアント側の構造化 DB |
| File API / FileReader | ローカルファイルの読込 |
| Drag & Drop API | ドラッグ&ドロップ操作 |
| Fetch API | HTTP 通信 (XMLHttpRequest の後継) |
| WebSocket | 双方向リアルタイム通信 |
| Server-Sent Events | サーバ → クライアントの一方向プッシュ |
| Web Workers | バックグラウンドスレッド処理 |
| Service Worker / PWA | オフライン対応・プッシュ通知 |
| WebRTC | ブラウザ間のリアルタイム通信 (P2P 音声/映像) |
| WebAuthn | パスキー (生体認証・FIDO2) |
| Notifications API | OS 通知の表示 |
| Page Visibility API | タブが見えているか判定 |
| History API | SPA のページ遷移 (pushState) |
| Intersection Observer | 要素が画面に入ったか検知 (遅延読込) |
| MediaDevices | カメラ・マイク・スクリーンキャプチャ |
| Permissions API | 位置・通知等の権限状態の問い合わせ |
API の呼び出し基本例
|
// Fetch API でJSON取得 |
HTML5 以降に追加された注目 API
- Clipboard API — 安全なコピー&ペースト操作
- Web Share API — OS 共有メニューの呼び出し (モバイル)
- Web Bluetooth / Web USB / Web Serial / Web HID — 周辺機器制御
- Web Speech API — 音声認識・合成
- Payment Request API — ブラウザ統合の決済 UI
- Background Sync / Periodic Sync — オフライン同期
- Web Animations API — JS でアニメーション
- ResizeObserver / MutationObserver — DOM 変化を効率検知
「Web API」と類似する用語
| 用語 | 意味 |
|---|---|
| Web API (ブラウザ API) | ブラウザが JS から提供する機能のインタフェース (本稿の主題) |
| REST API / HTTP API | サーバが HTTP 経由で提供する機能のインタフェース |
| 外部 API / 公開 API | SNS や決済サービスなど、第三者が提供する API |
| OS API / システム API | OS が提供する機能 (Windows API、POSIX 等) |
使うときの注意点
- ブラウザ・OS によって対応状況が異なる。MDN や Can I use で確認
- 位置情報・カメラ等はHTTPS が必須のものが多い
- ユーザの明示的な許可が必要な API は、初回呼び出しタイミングを工夫する
- 古いブラウザ向けにはpolyfillや代替実装を用意
- 非同期 API は
async / awaitまたは Promise で扱う - iframe や Cross-Origin ではセキュリティ制約 (CORS) を意識
関連
- 親カテゴリ: HTML
- 関連: JavaScript / ライブラリ (JavaScript)
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- DietCake とは(CakePHP 軽量版・現状・CakePHP 4.x / Laravel への移行) 2026-05-17 06:42:28
- OAuth 2.0 認可フロー完全ガイド(Authorization Code / PKCE / Refresh Token / Laravel Passport) 2026-05-17 06:42:28
- Python openpyxl で Excel(xlsx) を読み書きする完全ガイド(書式・数式・pandas 連携) 2026-05-17 06:42:28
- Laravel データベース設定完全ガイド(.env / config/database.php / 複数 DB 接続) 2026-05-17 06:42:28
- OOP カプセル化の本質(データ隠蔽 / private / readonly / immutable / 言語別書き方) 2026-05-17 06:42:28
- macOS で複数の VS Code / IntelliJ ワークスペースを並行起動する方法 2026-05-17 06:42:28
- Python dict 完全ガイド(生成・get・内包表記・マージ・defaultdict/Counter/TypedDict) 2026-05-17 06:42:28
- JSP taglib (JSTL) 完全ガイド(c:if / c:forEach / カスタムタグ / Spring form / Thymeleaf 移行) 2026-05-17 06:42:28
- Laravel Query Builder 完全ガイド(DB ファサード / join / トランザクション / Eloquent との使い分け) 2026-05-17 06:42:28
- Laravel バリデーション完全ガイド(validate / Form Request / カスタムルール / ローカライズ) 2026-05-17 06:42:28
- HTML5 Canvas API 入門(描画 / アニメーション / Three.js / PixiJS への発展) 2026-05-17 06:42:28
- Visual Studio で新規プロジェクト作成(C# Console / ASP.NET Core / WPF / NuGet / Git) 2026-05-17 06:42:28
- Silex とは(Symfony2 ベースのマイクロフレームワーク・2018 EOL・移行先) 2026-05-17 06:42:28
- Web サイト SEO 基礎完全ガイド(title / meta / 構造化データ / Core Web Vitals) 2026-05-17 06:42:28
- JavaScript スライダー実装ガイド(Swiper / Slick / 自前実装 / React / Vue) 2026-05-17 06:42:28
コメントを削除してもよろしいでしょうか?