API のサポート終了と削除(Chrome 51)

ジョー・メドレー
Joe Medley

Chrome のほぼすべてのバージョンで、プロダクト、パフォーマンス、ウェブ プラットフォームの機能に対して、多数の更新と改善が行われています。

Chrome 51(2016 年 4 月)では、Chrome に複数の変更が加えられました。

SPDY/3.1 のサポートを削除する

要約: HTTP/2 のサポートは広範囲に及んでおり、SPDY/3.1 のサポートは廃止される可能性があります。

削除の目的 | Chromestatus Tracker | Chromium のバグ

SPDY/3.1 は試験運用版のアプリケーション レイヤ プロトコルで、HTTP/1.1 よりもパフォーマンスが向上しています。これは、接続の多重化やサーバー push などによって行われました。この機能の多くが昨年 5 月に RFC として公開された HTTP/2 に組み込まれました。HTTP/2 は主要なサーバーとクライアントでサポートされているため、今後は Chrome から SPDY/3.1 を削除します。

TLS 次プロトコル ネゴシエーション(NPN)を削除する

要約: SPDY のサポート終了の一環として、以前 ALPN に置き換えられていた NPN が削除されました。

削除の目的 | Chromestatus Tracker | Chromium のバグ

NPN は、SPDY(移行では HTTP/2)のネゴシエートに使用された TLS 拡張機能です。標準化の過程で、NPN は 2014 年 7 月に RFC 7301 として公開された ALPN に置き換えられました。NPN の削除は、SPDY の削除と同時に行われる予定です。

onbeforeunload ダイアログのカスタム メッセージを削除する

要約: ウィンドウの onbeforeunload プロパティでカスタム文字列がサポートされなくなりました。

削除の目的 | Chromestatus Tracker | Chromium のバグ

ウィンドウの onbeforeunload プロパティは、ユーザーが移動することを確認するためにダイアログ ボックスに表示される文字列を返す関数に設定できます。これは、ユーザーがナビゲーション中にデータを失うのを防ぐためでした。残念なことに、ユーザーをだますためによく利用されます。

Chrome 51 以降、カスタム文字列はユーザーに表示されなくなります。ユーザーがデータを失うことを防ぐためのダイアログは引き続き Chrome に表示されますが、そのコンテンツはウェブページではなくブラウザによって設定されます。

今回の変更により、Chrome は Safari 9.1 以降と、Firefox 4 以降に対応するようになります。

<input type=search> の結果属性が非推奨になりました

要約: results 属性はどの標準にも含まれておらず、ブラウザ間で一貫性のない実装であるため、サポートを終了する予定です。

削除の目的 | Chromestatus Tracker | Chromium のバグ

results 値は Webkit でのみ実装され、Webkit と非常に一貫性のない動作になります。たとえば、Chrome では入力ボックスに拡大鏡アイコンを追加しますが、Safari デスクトップでは、拡大鏡アイコンをクリックして表示されるポップアップに表示される送信されたクエリの数を制御します。これは標準には含まれていませんので、今後サポートを終了する予定です。

それでも入力フィールドに検索アイコンを含める必要がある場合は、カスタム スタイルを要素に追加する必要があります。これを行うには、入力フィールドに背景画像を追加し、左側のパディングを指定します。

    input[type=search] {
      background: url(some-great-icon.png) no-repeat scroll 15px 15px;
     padding-left:30px;
    }

Chrome 53 で削除される予定です。