Mar 16, 2004

JavaScriptでプログラミング

いつのまにか143枚も追加されている「トップ画像共有プロジェクト」.さすがにこんなに多いと…という声もあるので「選択」するプログラムのプロトタイプをへろっと作ってみました. 詳細はextendの方に.

作成してちょこっと気づいたとこ. JavaScriptにはブラウザ依存の箇所があってブラウザを判断する必要があります. で, Mozilla系はuser agentにGeckoがあるかどうかで判断してたのですが,Safariでどうもうまく動かない…. おかしいなぁとおもいつつuser agentを表示させてみると…?(KHTML like Gecko)?…えっと…意味解析もしないと駄目ですか ^^;;

で, とがきゅーめーかの解説です. これは「チェックした画像だけを表示するgetHeaderPicFilename()を生成する」プログラムです. 初期状態では全部チェックされてますので, 適当にチェックを外して「create source」ボタンを押す. そこに表示されたソースをエディタにペーストして保存(拡張子は.js). それをgetheadbanner.jsの代わりに読み込ませたら完了です.まぁ, かなり使いにくいインタフェースですがプロトタイプってことで.

気になる事1つめ. 「指定した画像のみを表示する」方式では, 当然新規に追加された画像は指定しないと表示されません. 「指定した画像を表示しない」ブラックリスト方式の方がいいのかも知れない. もしくは「○○さんセレクト」みたいな感じで, セットも共有するとか.

2つめ. これは仕組みとして選択した画像のURLを全部リストにして書き出してます. 100枚選択すると100行のソース. まぁ大したことないといえばないです.で, 気になるのは100枚選んだ時, 1枚の絵がでる確率は1/100になります. …あたりまえと思ってるでしょう?ところがオリジナルではデザイナーを選んでから, そのデザイナーの絵を選択してるんです.つまり, デザイナーが10人いて, 1枚しか提供してない人がいたらその絵が選択される確率は1/10.「いろんなデザインの画像をだしてみよう」という目的にはこっちの方がいい気がしますよね….

…まぁ, 表示されている画像を選択してる時点で, そんな事気にしてないでしょうが. 最後にとがきゅーめーかを使ったサンプルを示しておきます.


(5/27追記) サンプルのJavaScriptについて解説を入れました

7 comments:

  1. とがきゅーめーかJavaScriptでプログラミングというエントリーで共有しているトップ画像を選択するというアプローチが紹介されています。好きなトップ画像をチェックボックスで選択することで、オリジナルの getheadbanner.js を作成してくれます。 かなり画像が増えたので、「とりあえず...

    ReplyDelete
  2. 面白いっすね。って主宰の僕が使っちゃいかんのですが(笑)。エントリー作って紹介してみたんですが、人気投票とか、自分のサイトを読み込んだ時点でリストアップできるといいですね。「これ、いいな。倍率アップ!」とか。いろんなアプローチが楽しいです。

    ReplyDelete
  3. 思わず, IRC系(というかIRcat開発系)でつかってるatsucatの名前で投稿してしまいましたが…^^;;人気投票はどうしてもサーバがないといけないので難しいかなぁ…作るのは簡単ですけどね.表示/非表示を変更するんじゃなくてお気に入りの確率を変えるのはいいかも知れませんね. どう実現するか…cookie使って遊べそうかな…

    ReplyDelete
  4. はじめまして。以前、とがきゅーめーか使わせていただいて、画像が増えてるから作り直そうと思ったら・・・。画像が表示されなくなっちゃってました(´Д⊂お気づきでしょうか?

    ReplyDelete
  5. きづいていませんでした^^;;元のgetheadbanner.js内の(非公開)関数呼び出しの仕様がちょっと変わってましたね…修正しておきました.

    ReplyDelete
  6. トップ画像共有プロジェクト-JUGEMでの設置例当サイトでも使用中のN@Blogさんのトップ画像共有プロジェクト。JUGEMの各テンプレートごとの設置例を紹介します。画像一覧はこちら。自分の選んだ画像だけを表示させたい方は、Afternoon Cafeさんのとがきゅーめーかぁへどうぞ。※各テンプレート名にマウ...

    ReplyDelete
  7. 修正ありがとうございます。早速また使わせていただきました。

    ReplyDelete