うひゃあ…私が拙いscriptを書いたばっかりに…
tsg さん、ごめんなさい。
クッキーを使うとすると…(汚いscriptで申し訳ない)。
<script type="text/javascript">
<!--
mydate = new Date();
YY = mydate.getFullYear();
MM = mydate.getMonth()+1;
DD = mydate.getDate();
startdate = YY+","+MM+","+DD;
var drate = 30; //何日間表示?
var nExpTime = 1000*60*60*24*100; //クッキーの有効期限(今は100日にしてます)
function GetCookie(strName){
var strReturn = ""; var nLoop = 0; var nLength = 0;
var strNameEx = strName + "="; var strTemp = "";
while (nLoop < document.cookie.length){ nLength = nLoop + strNameEx.length;
if (document.cookie.substring(nLoop, nLength) == strNameEx){
strTemp = document.cookie.indexOf(";", nLength);
if (strTemp == -1){strReturn = document.cookie.substring(nLength, document.cookie.length);
}else{strReturn = document.cookie.substring(nLength, strTemp);
} break;
}
nLoop = document.cookie.indexOf(" ", nLoop) + 1;
if (nLoop == 0){ SetCookie("data", startdate);
// alert("セットしました。" );
break;
}
} return strReturn;
}
function SetCookie(strName, strValue){
var dtExpire = new Date();
dtExpire.setTime(dtExpire.getTime() + nExpTime);
document.cookie = strName + "=" + strValue + "; expires=" + dtExpire.toGMTString();
}
var strValue;
strValue = GetCookie("data");
xx = strValue.split(",");
if (strValue == ""){ alert("今日から"+drate+"日の間\nずっとアラートが出ます。");
}else{ oldDay = new Date(xx[0] +"/"+ xx[1] +"/"+ xx[2]);
newDay = new Date(); n = (newDay - oldDay)/(1000*60*60*24);
if (n <= drate){ alert("このアラートは初回アクセス日\n"+ xx[1] +"月"+ xx[2] +"日から"+drate+"日間出ます。");
}
}
//-->
</script>
おそらくもっと簡単に書ける筈とは思うのですが…(他力本願)