میخوام یه Script ای بنویسم که تاریخ معین معکوس بشماره و وقتی 0 شد یه متننی بنویسه
به اینصورت 21روز و 14 ساعت و 23 دقیقه و 18 ثانیه.
چطوری باید اینکارو کنم؟
میخوام یه Script ای بنویسم که تاریخ معین معکوس بشماره و وقتی 0 شد یه متننی بنویسه
به اینصورت 21روز و 14 ساعت و 23 دقیقه و 18 ثانیه.
چطوری باید اینکارو کنم؟
آخرین ویرایش به وسیله mehdi.mousavi : شنبه 30 بهمن 1389 در 13:04 عصر دلیل: لطفا از ارسال یک پست به دو بخش خودداری نمایید!
والا من چیزی سر در نمیارم
اگه ممکنه یه کد بدین که تاریخو بهش بدیم بصورت "25 روز و 18 ساعت و 34 دقیقه و 21 ثانیه" خروجی بده و کم بشه
شرمنده دیگه پررو شدم
ببین اگر میخوای کد تحویل سال بنویسی بهتره از زمان سرور و php کمک بگیری
کد HTML:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> <script type="text/javascript"> function d() { var sta="2011/02/20 00:00:00 "; var currentTime = new Date(); var startDate = new Date(sta) var dif=startDate-currentTime; var s=1000; var m=1000*60; var h=1000*60*60; var d=1000*60*60*24; var days=Math.floor(dif/d); dif-=days*d; if (dif<=0)dif=0; var hours=Math.floor(dif/h); dif-=hours*h; if (dif<=0)dif=0; var minutes=Math.floor(dif/m); dif-=minutes*m; if (dif<=0)dif=0; var seconds=Math.floor(dif/s); document.getElementById('d').innerHTML=" day:"+days+" hours:"+hours+" minutes:"+minutes+" second:"+seconds; } setInterval("d()",1000); </script> </head> <body> <div id="d"> </div> </body> </html>
آخرین ویرایش به وسیله hossin.esm : شنبه 30 بهمن 1389 در 21:40 عصر
با تشکر از دوستان حاصل کار تو لینک زیر قرار گرفته
http://forum.joomfa.org/post141745.html
hossin.esm عزیز اگه مایلی مشخصاتت رو بده تا توی تاپیک مربوطه اعلام کنیم
ببخشید اسپم دادم
دوست عزیز برای تاریخ مونده به عید بهتره از سرور و php کمک بگیری با جاوااسکریپت تنها کارت نمیشه چون این کد دوست عزیزمون اگر تاریخ عوض کنی عوض میشه دیگه
حالا اگه بخواییم زمان جاری سرور رو به صورت آنلاین یعنی ثانیه و دقیقه شمار یه جای سایت بذاریم چی؟ ساعت همشه دسترس باشه و نیازی به ساعت سیستم کلاینت نباشه چون بیشتر مواقع اشتباهه
این هم کد برای گرفتن تاریخ از سرور
گرفتن تاریخ و ساعت جاری از سرور
var currentTime = new Date("<?php echo date('Y/m/d H:i:s a'); ?>");
کد HTML:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> </head> <body> <div id="d"> </div> <script type="text/javascript"> var currentTime = new Date("<?php echo date('Y/m/d H:i:s a'); ?>"); var sta="2011/02/21 00:00:00 "; var startDate = new Date(sta) function d() { currentTime*=1; currentTime+=1000; var dif=startDate-currentTime; var s=1000; var m=1000*60; var h=1000*60*60; var d=1000*60*60*24; var days=Math.floor(dif/d); dif-=days*d; if (dif<=0)dif=0; var hours=Math.floor(dif/h); dif-=hours*h; if (dif<=0)dif=0; var minutes=Math.floor(dif/m); dif-=minutes*m; if (dif<=0)dif=0; var seconds=Math.floor(dif/s); document.getElementById('d').innerHTML=" day:"+days+" hours:"+hours+" minutes:"+minutes+" second:"+seconds; } setInterval("d()",1000); </script> </body> </html>
آخرین ویرایش به وسیله hossin.esm : شنبه 07 اسفند 1389 در 08:43 صبح
این کد فقط باعث میشه تا مقدار currentTime به عدد تبدیل بشه
کد HTML:currentTime*=1;
وکد یک ثانیه به زمان اضافه میکنه.
کد HTML:currentTime+=1000;
کد تاثیری ندارد و فقط زمان را داخل currentTime میریزد که قبلا شامل ان زمان بوده است.
کد HTML:currentTime=currentTime.getTime();
آخرین ویرایش به وسیله hossin.esm : یک شنبه 08 اسفند 1389 در 09:23 صبح
چرا نباید جواب بدهد؟چون خروجی هر دو یکی است و عدد است. و وقتی هر دو را به اضافه 1000 می کنیم جواب یکسان است.
currentTime*=1;
currentTime+=1000;
وcurrentTime=currentTime.getTime();یک عدد را می دهد.
currentTime+=1000;
من هم این کار رو کردم اما currentTime را به صورت رشته در نظر میگرفت و 1000 را به آخر رشته اضافه میکرد.
شاید هم یک جای کار را اشتباه کرده بودم.
سلام دوستان :
آقا این کد اگه بخوایم وقتی زمان تموم شده منفی نزنه و صفر بشه چجوری باید عمل کنیم ؟
<script type="text/javascript">
function d() {
var sta = '<%=endtime%>';
var currentTime = new Date();
var startDate = new Date(sta)
var dif = startDate - currentTime;
var s = 1000;
var m = 1000 * 60;
var h = 1000 * 60 * 60;
var d = 1000 * 60 * 60 * 24;
var days = Math.floor(dif / d);
dif -= days * d;
if (dif <= 0) dif = 0;
var hours = Math.floor(dif / h);
dif -= hours * h;
if (dif <= 0) dif = 0;
var minutes = Math.floor(dif / m);
dif -= minutes * m;
if (dif <= 0) dif = 0;
var seconds = Math.floor(dif / s);
document.getElementById('cdtimer').innerHTML = "<table align=\"center\"><tr><td>روز </td><td> ساعت </td><td> دقیقه </td><td> ثانیه </td></tr><tr><td>" + days + "</td><td>" + hours + "</td><td>" + minutes + "</td><td>" + seconds + "</td></tr></table>";
}
setInterval("d()", 1000);
</script>
میتونید یک شرط بگذارید که وقتی شمارنده صفر شد clearInterval رو اجرا کنید.
این آدرس رو هم نگاه کنید.کمکتون میکنه
http://www.w3schools.com/jsref/met_w...arinterval.asp
ممنون ، اما ما اینجا روز ، ساعت و دقیقه و ثانیه داریم - clearinterval برای هرکروم جدا باید باشه !؟
کسی بلد نیست ؟!
خیلی عالی بود فقط پشت اعداد تک رقمی صفر نداشت ... میشه اینم اضافه کنید؟
خیلی عالی بود فقط پشت اعداد تک رقمی صفر نداشت میشه اینم اصلاح کنید؟