又一日歷輸入效果沒考慮兼容性,IE通過
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
做得比較急,所以沒考慮兼容性。
通過兩個(gè)類實(shí)現(xiàn),一個(gè)是面板類,一個(gè)是日歷類。
由于我開發(fā)時(shí)所有公共js都是在頂級(jí)窗口一次加載的,所以在子窗口創(chuàng)建對(duì)象時(shí)需要把當(dāng)前窗口對(duì)象傳進(jìn)去,例如: var panel = new parent.parent.SelectPanel(self);如果沒傳self參數(shù),默認(rèn)就是加載js的窗口。
marcian 在網(wǎng)上找的那個(gè)公歷算法有點(diǎn)復(fù)雜,呵呵。我獲取當(dāng)前月最大天數(shù),以及當(dāng)前月第一天是星期幾是直接通過JS自帶的Date函數(shù)來實(shí)現(xiàn)的。
// 獲取當(dāng)月最大天數(shù)
//asfman提供更簡(jiǎn)單的方式:return (new Date(y, m+1, 0)).getDate()
function GetDates(year, month)
{
var date = new Date(year, month, 31);
return 31 - date.getDate() || 31;
}
// 獲取當(dāng)月第一天是星期幾
function GetFirstDay(year, month)
{
return (new Date(year, month, 1)).getDay();
}
/* 下面這部分可以不要,因?yàn)榧词钩霈F(xiàn)new Date(2007, -1, 31),這種現(xiàn)象,Date會(huì)自動(dòng)轉(zhuǎn)換成Date(2006, 12, 31)
if(month < 0)
{
month = 11;
year--;
}
if(month == 12)
{
month = 0;
year++;
}*/
相關(guān)文章
自己整理的一個(gè)javascript日期處理函數(shù)
日期函數(shù),沒必要多說了吧?就是一般的日期比較,日期相加,獲取當(dāng)前time2010-10-10Javascript六種風(fēng)格的時(shí)間顯示方式
Javascript六種風(fēng)格的時(shí)間顯示方式...2006-12-12javascript 年月日聯(lián)動(dòng)實(shí)現(xiàn)核心代碼
年月日的四級(jí)聯(lián)動(dòng)實(shí)現(xiàn)效果的核心代碼,需要的朋友可以參考下。2009-12-12兼容FireFox 的 js 日歷 支持時(shí)間的獲取
應(yīng)網(wǎng)友要求,花了五六個(gè)小時(shí),為我經(jīng)常用的 js 日歷添加時(shí)間的獲取。2009-03-03javascript 日期時(shí)間函數(shù)(經(jīng)典+完善+實(shí)用)
日期時(shí)間腳本庫方法列表2009-05-05