掲示板3を作り始めたのは「偶然」でした。依頼を受けて作り始めたら、自分でも「これは、おもしろい」と思って、妖精現実でも使う気になったしだい。初めは、管理者(そのサイトの運営者)がレスをつけるだけの単純なゲストブックのようなものを考えていたのですが、依頼者の希望は、だれもが下へ下へとレスを伸ばせるスレッド方式。だれでも書き込み(新規投稿=新しいスレッドを立てること)ができるのは、掲示板である以上、当然ですが、どのスレッドに対しても、だれでもレスを付けられる、というシステムは、ごくシンプルな掲示板にくらべると、ほんのちょっぴり制作がめんどうです。
いま掲示板に、次のように3つのスレッド(スレ)があるとして ——
- アルメニアとアルバニアは違うんですか?
- Morino: 違いがよくわからん!
- Masumi: アルメニアって言ったらアルメニャックっていう蒸留酒が有名でしたよね。旧ソ連の一部。アルバニアはユーゴスラビアの近くのぜんぜん別の国です^^
- 陸奥A子さんて、まだ作品を発表しているのですか?
- Masumi: 陸奥A子のファンです。最近の作品について知りたいです。
- Kaoru: りぼんには、もう描いてないですよね。
- Shizuka: わたしもファンですが最近、見かけませんね。
- このサイトの感想☆
- Doremi: 日々、常連愛読者と敵対者を増やしつつある。
- mika: そういうものさ(´ー`)┌フッ
2番めの「陸奥A子さんて~」のスレッドに、mika さんが「今でも集英社YOUコミックスから新作が出てます。」というレスをつけると、次のようにそのスレッドがいちばん上にあがります。
- 陸奥A子さんて、まだ作品を発表しているのですか?
- Masumi: 陸奥A子のファンです。最近の作品について知りたいです。
- Kaoru: りぼんには、もう描いてないですよね。
- Shizuka: わたしもファンですが最近、見かけませんね。
- mika: 今でも集英社YOUコミックスから新作が出てます。
- アルメニアとアルバニアは違うんですか?
- Morino: 違いがよくわからん!
- Masumi: アルメニアって言ったらアルメニャックっていう蒸留酒が有名でしたよね。旧ソ連の一部。アルバニアはユーゴスラビアの近くのぜんぜん別の国です^^
- このサイトの感想☆
- Doremi: 日々、常連愛読者と敵対者を増やしつつある。
- mika: そういうものさ(´ー`)┌フッ
もちろん、既存のスレッドへのレスでなく新規にスレッドを立てることもできます。その場合も、やはり新規投稿は、いちばん上のスレッドとして表示されます。いろんな掲示板に慣れてるかたには説明するまでもないことでしょうが、意味がよく分からないかたは、説明を読むより実際に掲示板3βで試し書きしてみると、すぐ納得できるかと思います。(現在、掲示板3βは半分テスト公開なので、きらくにテスト投稿してみてください。)
以上は概念的な説明で、実際の掲示板の表示としては、次のような感じに実装してます。
これがひとつのスレッドの例です。そして掲示板の1ページごとに、一定数(現在6)ずつのスレッドを表示するようになってます。たとえ2ページめ以降にあるスレッドでも、レスがつけば、その瞬間に1ページめのいちばん上のスレッドになって、それ以外のスレッドは、ひとつずつ順番が下になるしくみです。こういったしくみを安全、簡単に実現する方法については、機会があれば改めて説明します。
初めにどんな掲示板がいいかきいたら、「牛飼いとアイコンの部屋」の夜のアイコンの雰囲気で、アイコン(キャラクター)がふきだしでセリフをしゃべる形式にしたい、とのことでした。で、ふきだしは思ったより簡単に作れ、フローティングスレッドもやってみたら案外、簡単にできたのですが、さらに「投稿者があとから自分の発言を修正したり削除する機能」をつけてほしい、「そしてときどき背景の夜空に流れ星が流れてほしい」との要望。発言修正機能は、掲示板では基本的なものですが、「流れ星」……しかも、背景画像のアニメGIFで実現するのでは、うるさい感じなので(たしかに……)ときたまランダムに流れてほしい、というリクエスト。これはPerlでは実現できないので、JavaScriptでやりました。ネスケ4でも見れます。というか、非常に珍しいことですが、この掲示板は、「あの」ネスケ4でも、ほぼIEやネスケ6やモジラと同じように表示されます……もちろん細かい部分はダメですが。
いわゆる流れ星というより、上から下へ、ぴかぴかしながら漂う星で、ちょっとシューティングゲームのように見えないこともありません。星の軌跡はランダムで、ほぼまっすぐ落ちることもあれば、くねくね動くこともありますし、すぅっと動くこともあれば、のろのろ動くこともあります。下の画像は、そんな漂流中の「流れ星」が、レスを書き込む欄の上を通過している瞬間をとらえたもの。
パスワード欄の下に見えている「地球」は、じつはマウスカーソルで、IE6などのCSS2対応ブラウザでは、このように表示されます。カーソルですから、マウスを動かすと、それに連動してこの「地球」も動きます。じつはアニメーションカーソルなので、この「地球」は、くるくる回転しています。
カーソルがこんな形では使いにくいと思われるかもしれませんが、カキコするためにフォームの上に持ってくると、ふつうのカーソルに戻るのでご安心ください☆ なお、ネスケなどでは、もともとふつうの矢印カーソルのままです。
「掲示板の舞台裏」という題名をみて、スクリプトの動作原理やトリック、ハック、おもしろい隠しコマンドなどを紹介する記事かと思われたかもしれません。そういった話も、おいおい書くことがあると思いますが、今回は、まず順序として、だいたいどんな掲示板か、という紹介を書きました。スレとレスといった用語の意味が分からないと説明を進められませんし……。