1

私は多くのJavaScriptを使用するWebサイトを持っています。私の問題は、ブラウザーで JavaScript オプションを無効にすると、Web サイトが期待どおりに機能しないことです。

私が見つけた2つの解決策は次のとおりです。

  1. ページのヘッダーに次のタグを追加しました。

    <noscript><meta http-equiv="refresh" content="0; URL=/noscript.php" />
    

    読み込み時に、ページは新しいページにリダイレクトされます。しかし、いくつかの研究を行う上で。クローラーがnoscriptページにインデックスを付け、それによってウェブサイトのseoに影響を与えるため、seoに問題があることがstackoverflowでわかりました。

  2. noscriptタグ内でjavascriptが無効になっている場合、stackoverflowのようにメッセージを表示するだけです。これが発生したときにサーバー側の検証を使用する別のフォームも作成したと思います。

すべてのフォームでサーバー側の検証の機能をやり直すことに加えて。私が利用できる他の解決策はありますか?また、ソリューション1が適切なオプションではないかどうかも知りたいです。私が見たように、Facebookもそれを利用しています。

前もって感謝します。

私はこれが私が望むように機能することを発見しました。それについてどう思うか知りたいですか?

<noscript>
 <font face=arial>JavaScript must be enabled in order for you to use the site.</font>      <style type="text/css">
#wrapper { display: none; }
</style>  
</noscript> 
4

1 に答える 1

1

コメントで述べたように、クライアントだけでなくサーバー側でも常にユーザー入力を検証する必要があります。これはおそらくあなたが聞きたい答えではありませんが(最初は追加の作業を意味します)、そうでない場合は、Webサイトが攻撃を受ける可能性があります。

JavaScript以外のユーザーをサポートする必要のあるWebサイトを構築する場合、基本的なHTML / CSSサイトから始めて、JavaScript機能を上に重ねる方がはるかに簡単だと思います。これはプログレッシブエンハンスメントと呼ばれます。

JavaScript以外のユーザーをサポートする必要がない(または本当にサポートしたくない)場合は、オプション2を使用します。JavaScriptを有効にしてサイトのすべての機能を使用できるようにする必要があることをユーザーに促します。

于 2012-11-09T10:12:07.547 に答える