電子書籍の厳選無料作品が豊富!

前回訪問ではなく、初回アクセスの日時を取得し表示したいです。
jquery.cookie.jsを使用してこれに http://q.hatena.ne.jp/1282238649 初回訪問日時を追加したいのです。
jquery.cookie.jsを使えばよいのか、javascriptで別に記述するのか、よくわかりません。
なるべく早く回答頂けると助かります。

A 回答 (4件)

提示されたコードのエラーは、try&catchの文法ミスです。


私には、なんのためのtry&cathcか分かりませんでした。
もっとも、このエラーが解消されたからといって正常には動きません。

大筋(ifによる条件分岐)は正常だと思いますが、文法は概ね間違っています。
厳しい言い方ですが、間違いだらけで指摘するところが見つかりません。

jquery.cookie.jsは、cookieの操作を簡略するものですが、jqueryを使う使わない以前に、cookieを操作するにはやはりcookieの基本を知る必要があります。
まずは、cookieを理解できるまで、十分調べてください。
    • good
    • 0

#2、です。

かいどくなど、ひつようないでしょ?
へんすう fd に date おぶじぇくとが、かえります

function FirstContact () {

 function toCookie (name, value, day) {
  var date = new Date;
  date.setTime (date.getTime () + day * 86400000);
  return encodeURIComponent (name) + '=' + encodeURIComponent (value) + ';' + 'expires=' + date.toUTCString ();
 }

 function getCookie (cookie, name) {
  var v = cookie.match (RegExp (encodeURIComponent (name).replace (/\W/g, '\\$&') + '\\s*=\\s*(.*?)(?:[\\s;,]|$)'));
  return (v) ? decodeURIComponent (v[1]): '';
 }
 
 var doc = document;
 var title = 'babu_babu_baboo'; // てきとうなもじ
 var day = 35; // てきとうなきかん
 var str = getCookie (doc.cookie, title);
 var date = str ? new Date (str): null;

 if (date)
  return date;
 
 doc.cookie = toCookie (title, (new Date).toString (), day);
 return null;
}
    • good
    • 0

function FirstContact(){var e=document,a=function(a,c){var b=a.match(RegExp(encodeURIComponent(c).replace(/\W/g,"\\$&")+"\\s*=\\s*(.*?)(?:[\\s;,]|$)"));return b?decodeURIComponent(b[1]):""}(e.cookie,"babu_babu_baboo");if(a=a?new Date(a):null)return a;e.cookie=function(a,c,b){var d=new Date;d.setTime(d.getTime()+b*864E5);return encodeURIComponent(a)+"="+encodeURIComponent(c)+";expires="+d.toUTCString()}("babu_babu_baboo",(new Date).toString(),365);return null};



var day = FirstContact ();

alert ( day ? day.toString (): 'はじめて';);
    • good
    • 0
この回答へのお礼

ありがとうございます。
折角解答して頂いたのですが、現在の知識では解読不能でした。。。

お礼日時:2011/08/28 01:12

以下をjavascriptで書くだけです。


ご自身でひとつづつ調べてみてください。
------------------------------------------------------------------------

A
cookieに情報がない場合にBグループを実行する。

B1
javascriptでアクセス日時を取得する。

B2
javascriptで日時をcookieに記録する。

C1
javascriptでcookie記録された情報を読み出す。

C2
javascriptでcookieから取得した日時を表示する。

------------------------------------------------------------------------

この回答への補足

ありがとうございます。参考にして以下のように書いてみました。


<script type="text/javascript">
<!--

var cook;
var Start;

if(navigator.cookieEnabled){

cook = document.cookie;
Start = cook.indexOf("counts=",0); //変数Startにカウントデータの最初の位置を入れる

if(Start == -1){
var date = new Date(); //アクセス日時を取得
document.cookie = "access=" + date; //日時をcookieに記録
//alert(document.cookie); //デバッグ用

var cookie = document.cookie;
document.write("初回の訪問です。<br />" + cookie);
}
//else{
//accessData = cookie.substring(7,14); //指定した文字数から○○文字目を取得する
//try{
//document.write(accessData);
//}
//catch(){
//document.write("失敗しました");
//}
//}
}
else{
document.write("cookieを有効にしてください");
}

-->
</script>

が、調べても謎が謎を呼び全くわからなくなってしまいました。

ifのあとのelseは有効にするとエラーとなってしまいます。

考え方としてはあっていますでしょうか・・・?
ご教示いただければ幸いです。

補足日時:2011/08/28 01:10
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!