パッシブ イベント リスナーによるスクロール パフォーマンスの改善
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
Chrome 51 の新機能であるパッシブ イベント リスナーは、特にモバイルでスクロールのパフォーマンスを大幅に向上させる可能性のある新しいウェブ標準です。以下の動画では、改善された機能のデモを並べて確認できます。
仕組み
ページをスクロールしたときに、ページが指にしっかりと固定されていないように感じるような遅延が発生した場合、スクロール ジャンクと呼ばれます。スクロール ジャンクは多くの場合、タッチイベント リスナーが原因です。タッチイベント リスナーは多くの場合、ユーザー操作をトラッキングしたり、カスタムのスクロール操作を作成したりできます(埋め込みの Google マップを操作する際にスクロールを完全にキャンセルするなど)。現在のところ、ブラウザはタッチイベント リスナーがスクロールをキャンセルするかどうかを把握できないため、常にリスナーが終了するまで待ってからページをスクロールします。パッシブ イベント リスナーは、addEventListener
の options
パラメータに、リスナーがスクロールをキャンセルしないことを示すフラグを設定できるようにすることで、この問題を解決します。この情報により、ブラウザはリスナーの終了後ではなく、すぐにページをスクロールできます。
詳細
パッシブなイベント リスナーの仕組みの概要については、Chromium ブログをご覧ください。
スクロールのパフォーマンス向上に役立つ新しい API
仕様のリポジトリでは、パッシブなイベント リスナーの実装方法を確認できます。
パッシブ イベント リスナーの説明
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2016-06-05 UTC。
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"必要な情報がない"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"複雑すぎる / 手順が多すぎる"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"最新ではない"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻訳に関する問題"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"サンプル / コードに問題がある"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"その他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"わかりやすい"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"問題の解決に役立った"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"その他"
}]
{"lastModified": "\u6700\u7d42\u66f4\u65b0\u65e5 2016-06-05 UTC\u3002"}
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2016-06-05 UTC。"],[],[]]