Webサイトのアクセシビリティを高めるための方法や国内外の関連情報など、さまざまな角度からWebアクセシビリティに関する話題をご提供していきたいと思います。
2006年04月05日
noscript要素の役割
アクセシビリティ・エンジニア 中村
前回触れたalt属性については、Webアクセシビリティといえばalt属性、というくらいに認知度の高いものだと思われますが、一方で今回取り扱うnoscript要素については、WCAGやウェブコンテンツJISでも同等の優先度にもかかわらず軽視されがちなようです。
といいましても、必ずしもnoscript要素が記述されていないというわけではありません。記述はされているものの、その中身に問題があるという場合が多いのです。
現在、script要素を使うとなると、JavaScriptを利用することが多いと思われます。そこで、検索エンジンで「JavaScript 有効(もしくは無効)」というフレーズで検索すると、「JavaScriptを有効にして下さい。」という記述のあるサイトが相当数存在していることがわかるかと思います。この類のメッセージが主にnoscript要素内に記述されているわけです。
では、これがなぜ問題なのか、ということを考えてみましょう。
まず第一に本来のnoscript要素の役目を果たしていません。この要素はスクリプトが実行されないときに代替となるコンテンツを提供する為のものです。「~有効にして下さい。」では当然のことながら、それ自体が目的ではない限りは代わりにはなりません。
次に、そもそもスクリプトが実行不可能なユーザエージェントの存在があげられます。このような環境ではユーザエージェントを違うものにしない限りはアクセスすることが不可能なわけです。
また、JavaScriptなどのスクリプトを有効にしてはいけない、という環境も存在します。企業や組織などでセキュリティの都合上禁止している場合です。この場合、環境を変えなければアクセスできません。
以上のようなスクリプトを実行できない環境からアクセスした際に、前述のようなページが表示された場合、果たしてユーザエージェントや環境を変えてまで再度アクセスしてくれるでしょうか。よほど魅力的であるか、そこにしか存在しないコンテンツがないかぎりは難しいでしょう。つまり、せっかくきてもらったお客様に対して、スクリプトが使えないならお帰りください、と門前払いしてしまっているようなものなのです。
ここで気になるのは、JavaScriptを無効にしている(もしくは有効にできない)環境からのアクセスがどのくらいあるのかということでしょう。W3Schoolsでの統計によると、JavaScriptオフの割合は2006年1月で10%となっています。一方、TheCounter.comの統計では同月で3%と記録されています。もちろん、この2つの統計だけで判断することはできませんが、それでも数%程度の人数がいるであろうという目安にはなります。
さて、それではnoscript要素内にはどのような記述をすべきなのでしょうか。これはscript要素に記述されているものによって違ってくる為、一概には言えません。しかし、重要なことは既に述べたとおり代替となる情報を提供するということです。これによって、ユーザを門前払いすることなく、少しでも多くの人がアクセス可能なサイトに近づくことでしょう。