特定の日付からカウントダウンを作成する、インターネットで見つけたコードを使用しています。将来の日付から指定した時間、分、秒からのカウントダウンのみが表示されるように、コードを編集しようとしています。指定された時間からカウントダウンするコードだけではありません。将来の指定された日付までカウントダウンする必要があります。これは、ブラウザが更新された場合にカウントダウンが最初からやり直されず、中断したところから続行されるようにするために重要です。ブラウザが最初に実行されたときに指定された将来の日付を記憶するように、Cookie を使用します。
HTMLは次のとおりです。
<form name="count">
<input type="text" size="69" name="count2">
</form>
そして、ここにJavaScriptがあります:
window.onload = function() {
//change the text below to reflect your own,
var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")
function countdown(yr,m,d){
var theyear=yr; var themonth=m; var theday=d
var today=new Date()
var todayy=today.getYear()
if (todayy < 1000)
todayy+=1900;
var todaym=today.getMonth()
var todayd=today.getDate()
var todayh=today.getHours()
var todaymin=today.getMinutes()
var todaysec=today.getSeconds()
var todaystring=montharray[todaym]+" "+todayd+", "+todayy+" "+todayh+":"+todaymin+":"+todaysec
futurestring=montharray[m-1]+" "+d+", "+yr
var dd=Date.parse(futurestring)-Date.parse(todaystring)
var dday=Math.floor(dd/(60*60*1000*24)*1)
var dhour=Math.floor((dd%(60*60*1000*24))/(60*60*1000)*1)
var dmin=Math.floor(((dd%(60*60*1000*24))%(60*60*1000))/(60*1000)*1)
var dsec=Math.floor((((dd%(60*60*1000*24))%(60*60*1000))%(60*1000))/1000*1)
if(dday==0&&dhour==0&&dmin==0&&dsec==1){
document.forms.count.count2.value=current
return
}
else
document.forms.count.count2.value= dhour+":"+dmin+":"+dsec;
setTimeout(function() {countdown(theyear,themonth,theday)},1000)
}
//enter the count down date using the format year/month/day
countdown(2012,12,25)
}
関数に渡したい時間、分、秒だけが必要なので、上記の余分なコードがあると確信していcountdown()
ます。年、月、日は重要ではありませんが、私が言ったように、これはインターネットで見つけたコードを編集しようとしています。どんな助けでも大歓迎です。ありがとうございました!