Chrome 60 でのサポートの終了と削除

Joe Medley
Joe Medley

Chrome のほぼすべてのバージョンで、 ウェブの性能や機能を改善し、 説明します。この記事では、Chrome 60 のサポート終了と削除について説明します。 6 月 8 日時点でベータ版ですこのリストは随時変更される可能性があります。

セキュリティ

crypto.subtle には安全なオリジンが必要

Web Crypto API これは、Chrome 37 では常に安全でないデータベースに対して動作していたため、 生成します。これは、Google が以前から設けている 強力な機能のために安全なオリジンを優先する crypto.subtle は安全なオリジンでのみ表示されるわけではありません。

削除の意思 | Chromium のバグ

コンテンツ開始型のデータ URL へのトップフレーム ナビゲーションを削除

技術に詳しくないブラウザには馴染みがないため、 なりすましやフィッシングで data: スキームが使用されることが増えています 防ぐことができます。これを防ぐため、ウェブページによる data: 件の URL の読み込みをブロックしています 移動します。これは、<a> タグ、window.openwindow.location および同様のメカニズム。data: スキームは引き続き使用できます リソースを定義できます。

この機能は Chrome 58 でサポートが終了し、削除されました。

削除の意思 | Chrome のステータス トラッカー | Chromium のバグ

一部の blob で navigator.sendBeacon() を一時的に無効にする

navigator.sendBeacon() 関数が使用可能になりました Chrome 39 以降。 最初に実装されたとおり、関数の data 引数には任意の文字列を指定できます。 型が CORS セーフリストでない任意の blob です。Google は しかし、それを悪用した人は誰もいません。なぜなら、 妥当な即時修正があるが、一時的に sendBeacon() は 型が CORS セーフリストでない blob で呼び出し可能になりました。

この変更は Chrome 60 に実装されましたが、その後統合されました Chrome 59 に戻ります。

Chromium のバグ

CSS

シャドウピアスの子孫コンビネーターを子孫コンビネーターのように動作させる

シャドウピアスの子孫組み合わせ(>>>)は、 CSS スコープ モジュール レベル 1 は、特定の祖先要素の子と一致することを想定していました。 シャドーツリーの中に映ったものも 認識できますこれにはいくつかの制限がありました。 まず、仕様に従ってquerySelector() などの JavaScript 呼び出しでのみ使用でき、 使用できます。さらに重要な点として ブラウザベンダーは 1 つのレベルを超えて処理できます

そのため、関連する仕様から子孫の組み合わせを削除しました たとえば Shadow DOM v1 が実装されました。このセレクタを削除することでウェブページが壊れる 代わりに、シャドウピアスの子孫にエイリアスを 結合されます元の動作は、 サポートを終了しました。 新しい動作は Chrome 61 で実装されています。

削除の意思 | Chrome のステータス トラッカー | Chromium のバグ

JavaScript

RTCPeerConnection.getStreamById() のサポート終了と削除

約 2 年前、getStreamById()WebRTC 仕様から削除されました。他のほとんどのブラウザでは、 すでに実装から削除していますこの関数は ほんの少しの小さなものが Safari 以外の Edge および WebKit ベースのブラウザでの相互運用性のリスク getStreamById() は引き続きサポートされます。代替手段を必要とするデベロッパー 実装に関するサンプルコードは、以下の削除インテントにあります。

削除は Chrome 62 で行われます。

削除の意思 | Chrome のステータス トラッカー | Chromium のバグ

SVGPathElement.getPathSegAtLength のサポート終了

getPathSegAtLength() は 2 年以上前に SVG 仕様から削除されました。 httparchive では、このメソッドのヒットはわずかなため、 サポートを終了する予定です削除は Chrome 62 で行われる予定です。 10 月上旬または中旬に出荷予定です

サポート終了の予告 | Chrome のステータス トラッカー | Chromium のバグ

getContextAttributes() をフラグの後ろに移動する

getContextAttributes() 関数は、 CanvasRenderingContext2D 2013 年から始まっていますただし、この機能は標準に含まれておらず、 その頃から 100%を占めています本来であれば Google Cloud の --enable-experimental-canvas-features コマンドライン フラグですが、誤って指定されていました できません。Chrome 60 では、この見落としは修正されています。これは、 この方法を使用していることを示すデータがないため、変更は安全ではありません。

Chromium のバグ

Headers.prototype.getAll() の削除

Headers.prototype.getAll() 関数は、最新の Fetch 仕様の新しいバージョン。

削除の意思 | Chrome のステータス トラッカー | Chromium のバグ

indexindexdDB.webkitGetDatabaseNames() を削除する

この機能は、インデックスに登録された DB が Chrome で比較的新しいときに追加され、 大流行でいったのですAPI が既存のデータベースのリストを非同期で返す これは十分に理にかなっているように見えます。

残念ながら、デザイン上の欠陥があり、すぐに結果が古くなってしまうかもしれない。 真剣に考えず、ロギングにしか使用できません。 説明します。「 GitHub の問題のトラック/リンク 異なるアプローチが必要になります。 ところがデベロッパーの間で断続的な関心が寄せられていましたが、 ブラウザの進行状況。この問題はライブラリ作成者によって回避されました。

この機能を必要とするデベロッパーは、独自のソリューションを開発する必要があります。 Dexie.js などのライブラリでは、グローバル テーブルが使用されています。 このデータベースは、データベースの名前を追跡するための別のデータベースです。

この機能は Chrome 58 でサポートが終了し、削除されました。

削除の目的 |Chrome のステータス トラッカー | Chromium のバグ

WEBKIT_KEYFRAMES_RULE と WEBKIT_KEYFRAME_RULE を削除する

非標準の WEBKIT_KEYFRAMES_RULE 定数と WEBKIT_KEYFRAME_RULE 定数 削除されます。 CSS ルール。 デベロッパーは、代わりに KEYFRAMES_RULEKEYFRAME_RULE を使用する必要があります。

削除の目的 |Chrome のステータス トラッカー | Chromium のバグ

ユーザー インターフェース

beforeunload ダイアログでユーザー操作を要求する

Chrome 60 以降では、beforeunload ダイアログはフレームが 表示しようとして、ユーザー操作またはユーザー インタラクションを受け取った場合(または そのジェスチャーが受信された)などです。誤解のないように言うと、これは beforeunload イベントのディスパッチに対する変更。これは単に ダイアログを表示するかどうかを指定できます。

beforeunload ダイアログはアプリモーダル ダイアログ ボックスです。そのため、本質的に 敵対的であるという意味で、ユーザーの操作に対してユーザーの 判断しますこの機能には便利な使い方があります。たとえば データが失われることをユーザーに警告します

beforeunload ダイアログにテキストを入力する機能は、 beforeunload のダイアログが不正使用の経路として残っています。イン 特に、beforeunload ダイアログは詐欺ウェブサイトの構成要素です。 音声の自動再生と脅迫的なテキストによって、Chromium が 「ページを閉じてもよろしいですか?」と表示される懸念が生じます

重要な点は、beforeunload の効果的な使用のみを許可することです。 クリックします。ダイアログの便利な使い方としては、ユーザーが わかりますユーザーがそのページで操作したことがない場合は、 ユーザーデータを損失するリスクを低減できます。したがって、 表示されなくなります。