Silverlight をインストールするには、ここをクリックします*
Japan変更|すべてのMicrosoft のサイト
MSDN
|MSDN ライブラリ|デベロッパー センター|ダウンロード情報|開発ツール製品|コミュニティ|ご意見・ご要望|サイトマップ
MSDN Home > 連載コラム > DHTML Dude > Dude の欲求不満 !

Dude の欲求不満 !

David Massy
Microsoft Corporation

November 27, 2000
日本語版最終更新日 2001 年 2 月 23 日

この記事は、もともと MSDN Online Voices のコラム "DHTML Dude" に掲載されたものです。

先月、私は「DHTML Dude」のゲスト コラムニストとして代役を務めましたが、1997 年 10 月からこのコラムを執筆していた Michael Wallent の後任として今月から正式にこの役目を引き受けることになりました。新しい「DHTML Dude」コラムを始めるにあたって、私は開発者が直面するいくつかの欲求不満についてお話しようと思います。

私は欲求不満だ

私は、いまシカゴに行くフライトがキャンセルされたので、霧で閉ざされたイリノイの空港で代わりのバスを待ちながらこの記事をタイプしています。当然のことながら、いったいいつ家にたどり着けるのかわからないので、周りのほかの多くの乗客と共に欲求不満になっています。

しかし、私はこの記事で空の旅の欲求不満に関して記述するつもりはありません。その代わりに、Web の機能を改善し、DHTML テクノロジを使ってユーザーにより対話的な体験を提供するときに、私や周囲の人々が感じる欲求不満についてお話しようと思います。最近、私は MathML の会議に参加しました。この会議については今後のコラムで紹介するつもりです。この会議の期間中、現実の問題の解決を支援する驚くべきテクノロジを持った人々にお会いしました。ところが、彼らは多くの人々がまだ古いブラウザを使っているので、この優れたテクノロジを十分に活用することが制限され、欲求不満に陥っていました。

あなたが Web のコンテンツを公開する場合、通常できるだけ多くの人々が、できる限り広範なデバイスからその Web にアクセスできるようにしたいと考えるでしょう。多くの場合、コンテンツを読み取るために新しいブラウザにアップグレードする必要があることをユーザーに要求するのは非現実的なので、より新しいテクノロジを利用することが制限されてしまいます。Microsoft® Internet Explorer に優れた DHTML テクノロジを導入することに密接に関わっている者として、人々が「これは優れた、驚くべきテクノロジですが、私はこれを使用できない」というのを耳にすると欲求不満になります。

新しいものを使う

多くの方法で、より新しい DHTML テクノロジを Web サイトで使用できます。使用する方法によって、必要な労力の度合いは異なります。DHTML ビヘイビアを調べる前に、より簡単に動的な機能を追加する一般的な技法を見てみましょう。ただし、この技法は DHTML ほどの柔軟性はありません。

ブラウザを見つけ出す

より新しいテクノロジを使用する方法の 1 つとして、ブラウザの種類とバージョンを見つけ出し、その後そのブラウザにとって適切なコンテンツを提供する方法があります。これは間違いなく最善の選択肢です。たとえば、ブラウザが DHTML に対応している場合、サーバーは古いブラウザが受け取る静的な HTML 3.2 コンテンツではなく、豊富な DHTML コンテンツを送信できます。

妥協することなく最新の DHTML 機能を十分に活用できるので、いくつかある方法の中ではこのオプションが最善です。ただし、サポートする異なるブラウザごとに同じコンテンツを複数回記述する必要があります。コンテンツの種類が多い場合、特にサイトのコンテンツを頻繁に変更するときは、法外に高価なコストが加算されることになります。

ダウングレード可能なコンテンツ

複数のバージョン用に同じコンテンツを記述するのにかかる高価なコストによりブラウザの検出を採用できない場合、ダウングレード可能なコンテンツと呼ばれる代案があります。

ここでの考え方は、ページに動的な機能を追加するために DHTML ビヘイビアを使用することです。この結果、古いブラウザでも HTML コンテンツが正しく表示され、最新のブラウザを使用しているユーザーにとってはより対話的になります。

ユーザーがより対話的な体験ができるように、HTML リストの展開、縮小機能を追加するビヘイビアの例を見てみましょう。ただし、この例は古いブラウザでも表示可能な同じ HTML コンテンツをまだ含んでいます。まず、ビヘイビアを使用しないコンテンツを見てみましょう。

見てわかるとおり、ネストされた、単純な、順不同の HTML リストです。次に、同じコンテンツに 2 つのビヘイビアを追加して、リストがどうのように対話的になったかを見てみましょう。

ここでは、同じコンテンツを見ることができますが、コンテンツが展開されていることを示すアイコンが表示されます。フォルダのアイコンをクリックすると、リストが展開または縮小されます。Internet Explorer 5.0 以降のブラウザを使用していない場合、上記の最初の例と同じものが表示されます。ビヘイビアは、カスケード スタイル シートを使用して、<UL> タグと <LI> タグのスタイルとして単純に宣言されています。従って、Internet Explorer はページに機能を追加したい位置でビヘイビアを利用できます。

今回は、これらのビヘイビアがどのように機能するかを詳しく説明するつもりはありません。ここでは、ビヘイビアがどのように記述されているかではなく、ビヘイビアを使用するのは容易であるということを強調したいと思います。ビヘイビアの記述に興味がある場合は、tree.htc ファイルおよび node.htc ファイルを調べてみてください。また、このコラムで詳しく説明した方がよいと思われる方はご連絡ください。

このような対話機能は簡単に実現でき、この方法でビヘイビアを使用すれば、ユーザーにより楽しく、好ましい体験を提供できます。静的な表示を行うほかのサイトとは対照的に、ユーザーは楽しく対話的な体験ができるので、ビヘイビアを使うことはそのサイトへの再訪を増やす助けになります。

ビヘイビアの利点

もちろん、ビヘイビアを使用しないで、ページにスクリプトを追加することにより、同じ効果が得られることは事実です。ただし、ビヘイビアはスクリプトの追加にはない利点をいくつか提供します。

これらの利点を理解するために、ページにスクリプトを追加する際にどれだけの労力が必要かを考えてみましょう。スクリプトがあらかじめ記述されていて、それをリンク スクリプト ファイルで利用できるとしても、ページにスクリプト タグを追加し、展開、縮小する特定のリストにこの機能を適用する必要があります。

多くの Web の作者は自分たちがプログラマであるとは考えていないので、ページ上にスクリプトを置くことには違和感があると感じていることを指摘しておく必要があります。このコラムの大部分の読者は、スクリプトのプログラミングに馴染みがあり、展開/縮小可能なリストのような機能のプログラムを作成することは比較的簡単だと考えているでしょう。しかし、コンテンツのデザイナや作者はそのように考えていない可能性があります。彼らは HTML や CSS を使用して魅力的なドキュメントを喜んで作成しますが、ドキュメントにスクリプトがあると苦労してしまうことがよくあります。コンテンツの作者が、ページ上のスクリプトで何が行われているかを理解しないと、コンテンツを更新するときにそのスクリプトを簡単に壊してしまいます。

Web ページの作者が、ドキュメント内に 2 つの別の展開/縮小可能なリストを使いたいと願っている状況を考えてみましょう。この場合、スクリプトではそのページ上で 2 つの別のリストを制御するためにスクリプトを変更する必要があります。

これを、ビヘイビアを使用してこの機能をページに追加する場合に必要なことと比較してみましょう。ページの作成者は、CSS でビヘイビアのプロパティを使用するだけで、スクリプトに関する知識を必要としないで、ページに多くの展開/縮小可能なリストを追加できます。再利用可能なコンポーネントの簡単なセットを作成するプログラマがビヘイビアを提供します。プログラマではない人もこ再利用可能なコンポーネントを使用して、ページをより対話的にできます。

欲求不満の解消

この情報が、新しいブラウザのテクノロジを使用するときの欲求不満の解消に少しでも役立つことを願っています。3 時間経ってバスが空港に到着したので、私はこのコラムを書き始めたときほど欲求不満ではなくなりました。もちろん、開発者の欲求不満を本当に解消する方法は、すべてのユーザーが最新のブラウザにアップグレードするのを奨励することです。そうすれば、私たちはこれらのすばらしいテクノロジを実装でき、ユーザーの生活ももっと楽しいものになるでしょう。

最後にひとこと。私の飛行機が遅れ、キャンセルされただけでなく、私の手荷物までがなくなってしまいました。



Dave Massy は、Internet Explorer チームのプログラム マネージャです。


Microsoft