こんにちは、さち です。
先日、ウェブサイトの制作中に、JavaScript がオフのときの動作をテストしたいことがありました。
Firefox に、JavaScript のオン/オフを簡単に切り替えられるアドオンを入れているのでそれを使ったのですが、サイトは思った通りの動作をしてくれません(<noscript>
の内容が表示されない)。
最初は、自分の書いたコードに問題があるのかと思ったのですが、そうではありませんでした。
JS オフ時に <noscript> が表示されない
- 「ディスプレイ ドット抜けテスト」を表示中です。
- このページは JavaScript がオンでないと動かないので、JavaScript がオフになっている場合は、
<noscript>
の内容「JavaScript をオンにして利用して下さい」を表示します。 - 試しに、Firefox のアドオン「JavaScript Toggle On and Off」を使って、JavaScript をオフにしてみます。
- しかし、
<noscript>
の内容が表示されません。ただし、JavaScript はちゃんとオフになっているのでページは正常に動きません。
Firefox 本体の設定から JavaScript をオフにすれば、<noscript>
の内容がちゃんと表示されるので、HTML や CSS の記述には問題ありません。アドオンではできないというだけです。
JavaScript オフ時の動作をテストするために、毎回「about:config」から「javascript.enabled」を「false」にするのは地味に面倒くさい……。
例として出したアドオン「JavaScript Toggle On and Off」は、ウェブサイト制作者用には作られていないだけです。通常のネット閲覧で、手軽に JavaScript のオン/オフを切り替えられるのは非常に便利で愛用しています。
「Web開発ツール」で解決
- Ctrl + Shift + I キーを押して、「Web開発ツール」を表示。右上の「…(カスタマイズとヘルプ)」→「設定」と進みます(F1 キーを押しても可)。
- 画面右側の方にある「JavaScript を無効化」にチェックを入れます。
- すると、ページ再読み込みされて
<noscript>
の内容が表示されました。
この方法なら、「about:config」から JavaScript のオン/オフを切り替えるよりはるかに楽ですね。
まとめ
昔の Firefox では JavaScript のオン/オフを切り替えるアドオンでも<noscript>
の内容は表示されていました。Firefox Quantum(バージョン57以降)では、アドオンによっていじれる範囲が制限されてしまったので、現在はできなくなってしまったのだと思います。
セキュリティと利便性はだいたい反比例するので仕方ないんですが、まさに今回もその一例だったのかもしれません。
コメント