優雅に劣化しないことも大丈夫ですか?
-
04-10-2019 - |
質問
私は、豊富なUI効果からデータベースへのデータの送信と取得まで、すべてに多くのjQueryとAjaxを使用するビデオ共有CMSを構築する過程にあります。 JavaScriptが無効になると、すべてがバラバラになり、機能の90%が機能しません。
私は、フラッシュプレーヤーを使用してメインコンテンツをストリーミングするこのような特定の種類のサイトで優雅に分解しないことは大丈夫だと思い始めています。したがって、サイトのメインコンテンツを表示できない場合、他のすべてのデュアルサポートを有効にするために、非常に長い時間を費やすポイントは何ですか。 YouTubeでさえ、JS無効になって壊れます。
オープンソースライセンスの下でCMSをリリースする予定です。質問は次のとおりです。
質量分布(およびこのタイプのサイトの場合)は、優雅に良いアイデアではありませんか?
解決
JSを有効にする必要があることをユーザーに明確にする限り、JSなしで「バラバラ」することは問題ありません。ただし、JSなしでは機能しないことを示すことができない場合、人々は怒ります。現在、ほとんどの人は、サイトが機能の何らかの面でJSを必要とすることを期待しています。
ビデオを備えたCMSのように複雑なものについては、JSを有効にしない場合、ユーザーのせいです。彼らはJSなしではそのような仕事を期待すべきではありません。たとえそうであっても、特にオープンソースである何かのために、JSと非JSの2つのバージョンを維持するのはおそらくあなたの時間ではありません。
他のヒント
あなたのアプリケーションはその目的全体でJavaScriptに依存しているので、あなたが優雅に劣化することは不可能です。あなたのサイトが、JavaScriptがあなたの素晴らしい機能をすべて取得できるようにユーザーに明確に指示している限り、そして多分異なるブラウザでそれを行う方法に関するいくつかのリンクが大丈夫です。 :d
あなたは本質的に聴衆を選んでいます。 IE6をサポートするかどうかを決定することとは異なります。それは正しいvsにはありません。それは、あなたの目的の容易さと引き換えに、あなたが失うことをいとわない視聴者の割合の単なる問題です。
そうは言っても、私は見つけた プログレッシブエンハンスメント (その恵みの劣化はです 結果)開発するための効率的で安全な方法であること。最初にHTMLを実行し、機能させてから、JSを上に砂糖として追加します。
ユーザーの1人がJavaScriptを実行していない可能性は低いです。何 は おそらく、私の謙虚な自己のために話すことは、あなたがいくつかを持っているということです すべてを殺す小さなJSエラー. 。 (JSは例外で停止する傾向がありますが、気づいたかもしれません。)
このようなエラーが発生した場合、ユーザーはまだサイトを使用できることを知ってうれしいです。私の意見では、それが優雅な劣化の目的です。
優雅な劣化は、「すべてのブラウザですべてが完全に機能する」という意味ではなく、「ブラウザが何かを処理できない場合、壊れたジャンクの代わりに賢明なものが見えます」を意味します。
あなたの場合、サイトが機能しないことを単純に検出し、必要なものを説明する素敵なエラーページを表示することは、許容できる形式の優雅な劣化です。
あなたが完璧主義者なら、Webサイトを破るだけでなく、JSを使用して人々に何が起こっているかを知らせることには何の問題もありません。これが簡単なハウツーです: JavaScriptが無効になっているかどうかを検出する方法は? .