參數(shù): 1、三個(gè)表示年月日的整數(shù),比如:new JCalendar(2007-5-18) 2、一個(gè)表示年月日的字串,年月日之間以“-”隔開,比如new JCalendar("2007-5-18") 3、空。參數(shù)為空,日歷初始化為當(dāng)前日期。
1、toString() 得到解釋后的日歷的HTML代碼 參數(shù):無 返回:解釋后的日歷的HTML代碼
2、setYears(first,last) 設(shè)置日歷年份下拉菜單的年份范圍 參數(shù): 1、first 第一個(gè)年份界限 2、last 第二個(gè)年份界限 兩個(gè)參數(shù)順序可以顛倒
2、bind(obj_id,direction) 將日歷邦定到某個(gè)文框,當(dāng)點(diǎn)擊該文本框的時(shí)候彈出日歷。 日歷的當(dāng)前日期為文本框里的日期,如果文本框里有日期的話。否則就是當(dāng)前日期 參數(shù): 1、obj_id:文本框的id direction:控制日歷顯示的方向,[right|bottom]。可以為空,默認(rèn)為right。 right-日歷顯示在文本框的右邊,bottom日歷顯示在文本框下面。
3、setKeyDate(Date_Array) 特別顯示關(guān)鍵天,典型例子:博客、網(wǎng)絡(luò)日志之類的日歷 實(shí)現(xiàn)原理,為每個(gè)關(guān)鍵天的表格單元添加一個(gè)class,名字為keydate,CSS樣式需要自己寫,比如加個(gè)背景之類的 參數(shù): Date_Array:日期的數(shù)組,比如:[1,4,6,9]
多數(shù)靜態(tài)方法是控件內(nèi)部調(diào)用的,用戶不應(yīng)該調(diào)用。 但是有兩個(gè)方法用戶可以覆蓋,也是日歷為用戶提供的兩個(gè)事件: 1、JCalendar.onupdate:在日歷日期更新時(shí)觸發(fā),用戶需要自己寫函數(shù)覆蓋默認(rèn)函數(shù) 2、JCalendar.onclick:在日歷日期被點(diǎn)擊時(shí)觸發(fā),用戶需要自己寫函數(shù)覆蓋默認(rèn)函數(shù)。 [注意]用作文本框輸入控件時(shí),不要覆蓋。
當(dāng)然,用戶可以自己定義自己的日歷樣式,下面是樣式的說明,同時(shí)也給出了本人的寫的樣式: #calendar_container {/ *日歷容器,是一個(gè)絕對(duì)定位的DIV,在日歷作為輸入控件時(shí)才有用。作為文本框輸入控件時(shí)必須定義這個(gè)樣式,而且一定要定義寬度 */ width:160px; border:1px solid #06C; } #calendar {/*日歷表格樣式,對(duì)應(yīng)的是一個(gè)<table>標(biāo)簽*/ border-collapse:collapse; background-color:#FFF; width:160px; height:120px; margin:0px auto; cursor:default; } #calendar td {/*很明顯,這是一個(gè)表格單元*/ text-align:center; vertical-align:middle; font-family:"宋體"; } #calendar thead {/*表格頭,也就是顯示日一二三四五六那行*/ background-color:#999; color:#FFF; } #calendar caption {/*表格標(biāo)題,也就是日歷的第一行,顯示年月的地方*/ background-color:#06C; } #calendar a{/*超鏈接樣式*/ color:#F90; margin:0 5px; text-decoration:none; } #calendar #prev_month,#calendar #next_month {/*點(diǎn)擊到上一個(gè)月,下一個(gè)月的兩個(gè)箭頭*/ font-size:18px; margin:0; } #calendar #c_today {/*表格單元格當(dāng)前天的樣式*/ background-color:#036; color:#FFF; } #calendar .over {/*鼠標(biāo)經(jīng)過單元格時(shí),顯示樣式*/ background-color:#CCC; } #calendar .keydate {/*關(guān)鍵天顯示樣式*/ color:#06F; }
1、實(shí)例化JCalendar 2、調(diào)用JCalendar的實(shí)例方法bind邦定文本框,其中可以多次調(diào)用bind方法進(jìn)行邦定多個(gè)文本框。 3、調(diào)用例子: window.onload = function(){ var j = new JCalendar(); j.setYears(1990,2020);//設(shè)置年份下拉菜單范圍為1990年到2020年 j.bind('a',"bottom"); j.bind('b'); }
1、實(shí)例化JCalendar 2、根據(jù)需要調(diào)用實(shí)例方法setKeyDate來設(shè)置關(guān)鍵天的顯示,前提是定義好CSS樣式,別忘了,樣式是一個(gè)類,類名叫keydate 3、調(diào)用例子: window.onload = function(){ var j = new JCalendar(); j.setYears(1990,2020);//設(shè)置年份下拉菜單范圍為1990年到2020年 j.setKeyDate([1,4,7,14,23,28]);//設(shè)置關(guān)鍵天 document.body.innerHTML = j.toString(); } [注意]同一個(gè)頁面,不能也不會(huì)出現(xiàn)兩個(gè)以上實(shí)例(因?yàn)槌绦蛳拗屏薧_^),即不能同時(shí)作為普通日歷和輸入控件用。 主要原因是用到了很多靜態(tài)方法。
看你能不能擋住我