js實現(xiàn)網(wǎng)頁倒計時、網(wǎng)站已運行時間功能的代碼3例
1、jQuery.countdown插件
顯示格式:50 周 01 天 07 小時 18 分 41 秒(秒為跑秒)
一個頁面可以有多個倒計時實例,可以停止和開始,它沒有提供太多的功能,但時間格式和輸出的尺寸都可以自定義。
目前最新版v2.0.2,官方地址http://hilios.github.io/jQuery.countdown/
例如:
<div id="getting-started"></div>
<script src="http://code.jquery.com/jquery-1.10.2.min.js" type="text/javascript"></script>
<script src="http://hilios.github.io/jQuery.countdown/javascripts/jquery.countdown.min.js"></script>
<script type="text/javascript">
$('#getting-started').countdown('2016/01/01 00:00', function(event) {
$(this).html(event.strftime('%w 周 %d 天 %H:%M:%S'));
});
</script>
輸出結(jié)果:50 周 01 天 07 小時 18 分 41 秒
注意:如果需要一共還有多少天數(shù)用%D,參數(shù)說明:
Y: "years"
m: "months"
w: "weeks"
d: "days"
D: "totalDays"
H: "hours"
M: "minutes"
S: "seconds"
2、顯示格式:距離結(jié)束時間還有:00天05小時25分30秒(秒為跑秒)
<div id="time" class="time"></div>
<script language=javascript>
function show_date_time(){
window.setTimeout("show_date_time()", 1000);
target=new Date(2014,0,15,17,0,0); //注意:表示月份的參數(shù)介于 0 到 11 之間。也就是說,如果希望把月設(shè)置為8月,則參數(shù)應(yīng)該是7。
today=new Date();
timeold=(target.getTime()-today.getTime());
sectimeold=timeold/1000
secondsold=Math.floor(sectimeold);
msPerDay=24*60*60*1000
e_daysold=timeold/msPerDay
daysold=Math.floor(e_daysold);
e_hrsold=(e_daysold-daysold)*24;
hrsold=Math.floor(e_hrsold);
e_minsold=(e_hrsold-hrsold)*60;
minsold=Math.floor((e_hrsold-hrsold)*60);
seconds=Math.floor((e_minsold-minsold)*60);
if (daysold<0) {
document.getElementById("time").innerHTML="逾期,倒計時已經(jīng)失效";
}
else{
if (daysold<10) {daysold="0"+daysold}
if (hrsold<10) {hrsold="0"+hrsold}
if (minsold<10) {minsold="0"+minsold}
if (seconds<10) {seconds="0"+seconds}
if (daysold>0) {
document.getElementById("time").innerHTML="距離結(jié)束時間還有:"+daysold+"天"+hrsold+"小時"+minsold+"分"+seconds+"秒";
}
else
document.getElementById("time").innerHTML="<font color=red>距離結(jié)束時間還有:"+daysold+"天"+hrsold+"小時"+minsold+"分"+seconds+"秒</font>"; //結(jié)束時間小于1天,字體呈紅色提醒
}
}
show_date_time();
</script>
3、 顯示格式:已運行0 年 1 天 0 小時 4 分鐘 35 秒(秒為跑秒)
<span id="sitetime"></span>
<script language=javascript>
function siteTime(){
window.setTimeout("siteTime()", 1000);
var seconds = 1000
var minutes = seconds * 60
var hours = minutes * 60
var days = hours * 24
var years = days * 365
var today = new Date()
var todayYear = today.getFullYear()
var todayMonth = today.getMonth()
var todayDate = today.getDate()
var todayHour = today.getHours()
var todayMinute = today.getMinutes()
var todaySecond = today.getSeconds()
/* Date.UTC() -- 返回date對象距世界標準時間(UTC)1970年1月1日午夜之間的毫秒數(shù)(時間戳)
year - 作為date對象的年份,為4位年份值
month - 0-11之間的整數(shù),做為date對象的月份
day - 1-31之間的整數(shù),做為date對象的天數(shù)
hours - 0(午夜24點)-23之間的整數(shù),做為date對象的小時數(shù)
minutes - 0-59之間的整數(shù),做為date對象的分鐘數(shù)
seconds - 0-59之間的整數(shù),做為date對象的秒數(shù)
microseconds - 0-999之間的整數(shù),做為date對象的毫秒數(shù) */
var t1 = Date.UTC(2014,0,14,11,19,00)
var t2 = Date.UTC(todayYear,todayMonth,todayDate,todayHour,todayMinute,todaySecond)
var diff = t2-t1
var diffYears = Math.floor(diff/years)
var diffDays = Math.floor((diff/days)-diffYears*365)
var diffHours = Math.floor((diff-(diffYears*365+diffDays)*days)/hours)
var diffMinutes = Math.floor((diff-(diffYears*365+diffDays)*days-diffHours*hours)/minutes)
var diffSeconds = Math.floor((diff-(diffYears*365+diffDays)*days-diffHours*hours-diffMinutes*minutes)/seconds)
document.getElementById("sitetime").innerHTML=" 已運行"+diffYears+" 年 "+diffDays+" 天 "+diffHours+" 小時 "+diffMinutes+" 分鐘 "+diffSeconds+" 秒"
}
siteTime()
</script>
相關(guān)文章
擴展js對象數(shù)組的OrderByAsc和OrderByDesc方法實現(xiàn)思路
js的擴展方法是基于原型的,如Array.prototype.XXXX就是給Array擴展XXX方法,然后數(shù)組都能使用這個方法了,在對象數(shù)組里面經(jīng)常有根據(jù)屬性來進行排序的,升序,降序的,下面與大家分享自己寫的一個2013-05-05javascript下function聲明一些小結(jié)
function聲明一些東西,我們都知道function和var一樣是預(yù)處理的在js里面,但是到底什么是函數(shù)聲明呢,我們來看幾個例子2007-12-12JavaScript String 對象常用方法總結(jié)
下面小編就為大家?guī)硪黄狫avaScript String 對象常用方法總結(jié)。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考2016-04-04