• 締切済み

シンプルなweb版スタンプラリーの作成について

お世話になります。 これまで基礎程度しか触れたことのない初心者で、足りないことを申し上げてしまうと思いますが教えていただけますと嬉しいです。 標記につきまして、サイトでかんたんなスタンプラリーのようなものを設置したいと思っています。 設置したいページにスタンプ画像を置き、画像をクリックすると一覧表のページに戻り、取ったスタンプが記録されており、全て揃えるとゴールのページのリンクが表示されるというかたちです。 参考になるサンプルを探してみたのですが、見つけたものは複雑で、cgiの触り方は分からずだったのでこちらはあきらめました。 参考サイト様:http://www.nmt.ne.jp/~misao/cgi/stamps.html JavaScriptで出来ないかと考えております。 別のところで「画像がクリックされる度にイベントを発生させる。その画像のフラグを立て、クッキーにでも保存する。フラグをチェックし、全て立っていたらリンクを表示。」という回答文言があったのですが、文字だけで詳細なJavaScriptが無かったため実際にどういう構造なのかが分かりませんでした。 もし、サンプルや参考になりそうなサイトをご存じでしたら教えていただけますと嬉しいです。 宜しくお願い致します。

みんなの回答

  • Ogre7077
  • ベストアンサー率65% (170/258)
回答No.1

HTML5 で実装できるなら フラグを保存する var STOREKEY = 'stump_rally_status'; function storeStatus(status) { window.localStorage.setItem(STOREKEY, JSON.stringify(status)); } function readStatus() { var str = window.localStorage.getItem(STOREKEY); var status = (str && str != 'null' && str != 'undefined')? JSON.parse(str): {}; return status; } 画像がクリックされたらイベント function recordStump(id, pswd) { var status = readStatus(); status[id] = pswd; storeStatus(status); } window.addEventListener('click', function(ev){ var elem = ev.target; if (elem instanceof HTMLImageElement) { if (elem && elem.dataset && elem.dataset.stump) { var m = /(\w+)\/(\w+)/.exec(elem.dataset.stump); if (m) recordStump(m[1], m[2]); } } }, false); <a href="一覧表のページ"><img data-stump="hoge/abc" src=stump_hoge.png></a> <a href="一覧表のページ"><img data-stump="boke/ijk" src=stump_boke.png></a> <a href="一覧表のページ"><img data-stump="fuga/xyz" src=stump_fuga.png></a> フラグをチェックし、全て立っていたらリンクを表示 チート対策として、判断にダイジェスト値を利用する function createDigest(str) { var M = 0x1FFFFFFF; var v = 123456789 & M; for (var i = 0; i < str.length; i++) { var c = str.charCodeAt(i); v = (v * c * 2 + 3) & M; // TODO もっと難しく! } return v; } function checkRallyGoal(status) { var KEYS = 'hoge,boke,fuga'.split(/,/); var GOAL = createDigest('abc,ijk,xyz'); // TODO 定数に置換して var passwords = KEYS.map(function(x){return status[x]}).join(','); var digest = createDigest(passwords); return digest == GOAL; } window.addEventListener('DOMContentLoaded', function(ev){ if (checkRallyGoal(readStatus())) { var a = document.getElementById('goal').appendChild(document.createElement('a')); a.href = 'ゴールのページ'; // TODO チート対策 a.textContent = 'ゴール'; } }, false); <p id=goal></p>

okpokapoka
質問者

お礼

この度はありがとうございました。 お返事とお礼が大変に遅くなり申し訳ございませんでした。もっと難しいことを考えていて、あまりに無知だったとお恥ずかしい限りです。本当にありがとうございます。 しばらく作業が止まっていたのですが、またこれから頑張って作業を進めたいと思います。取り入れたい機能が増えたので、またわからないことがあればご教授をよろしくお願いいたします。 本当にありがとうございました。

関連するQ&A

  • クリックランキング JavaScript+PHP

    クリックランキング JavaScript+PHPで作成しようと思います。 リンク画像をクリックすると、リンクページ先にページ移動&DBにクリックの値を追加をしたいのですが・・・・ おそらく、画像をクリックするとJavaScriptへリンク先URLと画像コードを渡して、リンク先は、Window.Openか何かで開いて、画像コードを PHPプログラムに渡すのではないかな?と思うのですが・・・。 書き方がいまいちわかりません。 サンプルコードかそのようなサイトはありませんでしょうか?? 教えて下さい。

  • 知識がなくても作成可能な「ソート」の作り方

    下記のようなものを作りたいと考えております。 http://www.azr.ne.jp/test/sample/dbsrch_1/cgi/srch1.cgi?do=sr1 画像や商品をクリックしたら詳細ページに飛ばなくても良いです。 CGIはゼロから作成できず、あるものをカスタマイズしたりして、作成できる程度の知識です。こんな者でも作成可能でしょうか? 無料サイトなどありましたら、ご教授ください。

    • 締切済み
    • CGI
  • javascriptでスライドするページの作成

    はじめまして。 ホームページを作成しているものです。 先日就航した全日空787のホームページのデザインが気に入って このようにページを横にスクロールして見せたいと思いました。 私はjavascriptのコードを一から書く知識がないので このような表現を代用できるテンプレートがあるのかご存知の方がいらっしゃいましたら お聞きしたいと思い投稿致しました。 参照サイト 全日空の787型機のオフィシャルサイト http://www.ana.co.jp/promotion/b787/mwj/ 細かい点になりますが、 ・javascriptページ内のテキストの縦のスクロールする方法 ・javascriptページにリンクを貼る方法→スライドするページは1枚の画像で制作する方法は試したことがあるのですが参照サイトのように、他のページへのリンクボタン、YouTubeへのリンクボタンを埋め込む方法が分かりません。 ・javascriptページ下のナビゲーションボタン(クリックすると伸びて、各ページの小さい画像が現れる)の作り方 も合わせてお分かりになりましたらどうぞよろしくお願い致します。

  • 画像がクリックされたら画像が切り替わる方法を同一ページ内に複数 設置

    JavaScriptを使用して、画像がクリックされたら画像が切り替わる方法を同一ページ内に複数 設置したいため、以下のページを参考にしました。 http://www.sumnet.ne.jp/domp/jsbs/kaisetsu/image3.htm http://javascript.eweb-design.com/0801_cci.html (Sample1) 1つだけなら設置できるのですが、複数行おうとすると、1つだけしか起動しなかったり、クリックした画像以外の画像が切り替わるなどしてしまいます。(nameは各々変えています) これを解決するには何をすればよろしいのでしょうか?? 初心者のため上手に伝えれず申し訳ございません。これが解決できず困っております。ご指導のほど、お願いいたします。

  • 携帯のフォトフレーム・スタンプ作成とダウンロード方法について

    携帯のフォトフレーム・スタンプ作成の仕方が分かりません。 ドコモ、ボーダフォン、AUなど3キャリアそれぞれ、 作成方法を教えてくれるサイトがほどんど見当たりません。 http://www.au.kddi.com/ezfactory/tec/dlcgi/download_1.html 上記urlサイトを参考にして、作成しましたが、 ここまで詳しく書いているにも関わらずサンプルの画像を使ってのダウンロードは成功したんですが、いざ私が作成したフレームやスタンプに置き換えてみるとデバイスエラーが起こります。 各種携帯のフォトフレーム・スタンプ作成とダウンロード方法を教えてください。 もしくは上の説明を詳しく教えてくれるサイトをご紹介してください。 よろしくお願いいたします。

  • WEBサイト作成を頼まれたのですが…

    お世話になります。それほど難しい技術を使っていないのにデザインの優れているサイトを教えて頂きたいのですが、以下に今回の質問に至った経緯を記します。 ●社内の営業さんが取引先から別件でということでWEBサイトの作成を頼まれたらしく、私が個人的にサイトを作っていることからデザインのサンプルと見積もりを出して欲しいと言われました。(私はショップや小規模なサーチエンジンなどをいくつか運営していますが、女性向のかわいい感じのサイト作成しか経験がありませんが社内には私しか一応サイト作成できるものはいません。外注に出す事も考えてないようです…) 今回頼まれたのはアートメイクのサイト(これはまぁ何とかなりそうです)と人材派遣業のサイトで、人材~の方は同種の色んなサイトを見たのですが、かっちりきっちり作っているサイトが多く、トップページにFlashなどもお決まりの様に使われています。 私が技術的に出来る事は、Flash少々とCGI(せいぜい掲示板の設置やメールフォーム設置ぐらい)Javascriptと言ってもポップアップで別ウインドウを開くとか、そんなぐらいで、WEB上からユーザー登録するとかリアルタイムでお仕事情報を更新するとか、履歴書を保存しておく機能を有するようなサイトは作れそうにないのですが(そういうサイトが多いですよね)先方もそこまで望んでないとの事で企業情報などを掲載したいだけなのかもしれないので、それほど凝った仕掛けをしていなくてもセンスの良いページがあれば教えて欲しいということで質問しました。 PCはウィンドウズMe、XPを使います。 ソフトはイラストレーター9.0、フォトショップ6.0、Dreamweaver MX、SWiSHです。

    • 締切済み
    • CSS
  • JavaScriptを使ったHPを作成しているのですが

    http://javascript.eweb-design.com/0512_shh.html このページのサンプル2を使用してHPを作成中です。 サブウィンドウに画像をのせ、その画像にMAPで位置を指定して複数のリンクをはり、 上のページでいうところのSample 2をクリックしたときに開く大きな画面にリンク先を表示させたいのですが、 サブウィンドウのタグはどのようにすればよいのでしょうか? 教えてください、お願いします。

  • Javascriptを使用したスライドバナーについて教えてください

    現在ECサイトを構築しておりまして、TOPページの一定の場所の中で画像が自動でスライド、もしくはフェードイン・アウトで切り替わるバナーを設置したいと思っています。 似たようなイメージのものを設置しているサイトさんのソースを覗いたりしているのですがJavascriptについて詳しくはないので導入や設定の方法が見出せず困っております。 各画像にはそれぞれ別のリンク先を設定したいのですが何か参考になるサイトや方法などございませんでしょうか? 自動や手動で画像が切り替わるスライドショーなどは多数見つけたのですが、リンクの設定などに触れているものが見つからなかったのでこちらに投稿させていただきました。 あくまでもFLASHではなくJavascriptで行いたいので宜しくお願いいたします。

  • perl オリジナルのアクセス解析を作成したい

    Perlを使ってアクセス解析のCGIを作成したいのですが、参考になるサイト等ありましたら教えてください。 理想としては、メインのindex.htmlのページの中にこっそりとCGIプログラムを呼び出すjavaScriptを仕込んでおこうかと思っているのですが、可能でしょうか。

    • ベストアンサー
    • CGI
  • 自動リンクの作成について

    htmlファイルでURLにアンカータグを付け忘れたり、多数のリンクさせていないURLで表示されている文字があるのですが、これを、ユーザーサイドによるjavascriptでhttp://から始まっている文字にHTML閲覧上で自動でそのアドレスにリンクが貼れるようなことができるのでしょうか? サンプル配布サイトや参考になりそうなサイトまたは、簡単なソースを教えていただけないでしょうか?

専門家に質問してみよう