漫畫原創Jquery時間插件
漫畫原創Jquery時間插件
1、可以靈活設計響應事件(Event)
1、可以靈活設計響應事件(Event)
2、層顯示的位置(Left,Top)
3、年月日之的連接符號
4、自由控制是否顯示時間(isTime)
5、年份下列列表的開始值與結束值

插件源代碼如下
$(函數(){
美元。fn.m??anhuaDate =功能(選項){
VAR默認= {
事件:“點擊”
左:0
頂:22
特服號:“ - ”,
isTime:假的,
beginY:1949
恩迪:2049
};
VAR選項= $擴展(默認選項);
$(“身體”)。前置(“<div class='zhezhao'> </ DIV> <div class='calender'> <div class='calenderContent'> <div class='calenderTable'> <格類= 'getYear的'ID ='GETDATE'> <a class='preMonth' id='preMonth'>上一月</ A> <select id='year'> </ SELECT> <select id='month'> < /選擇> <a class='nextMonth' id='nextMonth'>下一月</ A> </ DIV> <div class='tablebg'> <表id =“日歷”篇文章中= '0'CELLSPACING =' 1“> <tr bgcolor='#D6D6D6'> <th class='weekend'>日</ TH> <TH>一</ TH> <TH>二</ TH> <TH>三</ TH> < TH>四</ TH> <TH>五</ TH> <th class='weekend noborder'>六</ TH> </ TR> <TR> <TD class='weekend2'> </ TD> <TD > </ TD> <TD> </ TD> <TD> </ TD> <TD> </ TD> <TD> </ TD> <td class='weekend2 noborder'> </ TD> </ TR> <TR> <td class='weekend2'> </ TD> <TD> </ TD> <TD> </ TD> <TD> </ TD> <TD> </ TD> <TD> </ TD> <td class='weekend2 noborder'> </ TD> </ TR> <TR> <TD class='weekend2'> </ TD> <TD> </ TD> <TD> </ TD> <TD> < / TD> <TD> </ TD> <TD> </ TD> <td class='weekend2 noborder'> </ TD> </ TR> <TR> <TD class='weekend2'> </ TD> < TD> </ TD> <TD> </ TD> <TD> </ TD> <TD> </ TD> <TD> </ TD> <td class='weekend2 noborder'> </ TD> </ TR > <TR> <td class='weekend2'> </ TD> <TD> </ TD> <TD> </ TD> <TD> </ TD> <TD> </ TD> <TD> </ TD > <td class='weekend2'> </ TD> </ TR> <TR> <TD class='weekend2'> </ TD> <TD> </ TD> <TD> </ TD> <TD> < / TD> <TD> </ TD> <TD> </ TD> <td class='weekend2'> </ TD> </ TR> </ TABLE> </ DIV> </ DIV> </ DIV> < / DIV>“);
VAR $ mhInput = $(本);
VAR isToday = TRUE ;/ /是否為今天界面風格默認為什么
日期=新的日期();/ /獲得時間對象
VAR nowYear = date.getFullYear();/ /獲得當前年份
VAR nowMonth = date.getMonth()+1 ;/ /獲得當前月份
VAR今天= date.getDate();/ /獲得當前天5.3
VAR nowWeek =新的日期(nowYear,nowMonth - 1,1)。getDay();/ /獲得當前星期
nowLastday = getMonthNum(nowMonth,nowYear);/ /獲得最后一天
/ /年,月下拉框的初始化
(VAR我= options.beginY;我<= options.endY;我+){
$(“<option value='"+i+"'>”+ +“年</選項>”)appendTo($(“#年”));
}
(VAR I = 1;我<= 12; I + +){
$(“<option value='"+i+"'>”+ +“月</選項>”)appendTo($(“#月”));
}
ManhuaDate的(nowYear,nowMonth,nowWeek nowLastday);/ /初始化為當前日期
/ /上一月綁定點擊事件
$(“#preMonth”)。點擊(函數(){
isToday =虛假的;
年= parseInt($(“#年”)VAL());
一個月= parseInt($(“#月”)VAL());
一個月=月 - 1;
如果(月<1){
一個月= 12;
一年=年 - 1;
}
(nowYear ==月的&& nowMonth ==){
isToday = TRUE;
}
VAR周=新的日期(年,月 - 1,1)getDay();
LASTDAY = getMonthNum(月,年);
ManhuaDate(年,月,周,LASTDAY);
});
/ /繁體下拉框的改變事件
$(“#年”)。變化(函數(){
isToday =虛假的;
年= parseInt($(本)VAL());
一個月= parseInt($(“#月”)VAL());
(nowYear ==月的&& nowMonth ==){
isToday = TRUE;
}
VAR周=新的日期(年,月 - 1,1)getDay();
LASTDAY = getMonthNum(月,年);
ManhuaDate(年,月,周,LASTDAY);
});
/ /月下拉框的改變事件
$(“#月”)。變化(函數(){
isToday =虛假的;
年= parseInt($(“#年”)VAL());
月= parseInt($(本)VAL());
(nowYear ==月的&& nowMonth ==){
isToday = TRUE;
}
VAR周=新的日期(年,月 - 1,1)getDay();
LASTDAY = getMonthNum(月,年);
ManhuaDate(年,月,周,LASTDAY);
});
/ /下一個月的點擊事件
$(“#nextMonth”)。點擊(函數(){
isToday =虛假的;
年= parseInt($(“#年”)VAL());
一個月= parseInt($(“#月”)VAL());
月= parseInt(月)+ 1;
(parseInt(月)> 12){
一個月= 1;
一年= parseInt(年)+ 1;
}
(nowYear ==月的&& nowMonth ==){
isToday = TRUE;
}
VAR周=新的日期(年,月 - 1,1)getDay();
LASTDAY = getMonthNum(月,年);
ManhuaDate(年,月,周,LASTDAY);
});
/ /初始化日歷
函數ManhuaDate(年,月,周,LASTDAY){
$(“#年”)值(年)。;
$(“#月”)。值(月)
表=(“日歷”);
VAR?= 1;
(VAR J = 0; J <一周; J +){
table.rows [1]細胞[J]。的innerHTML =“”
}
(VAR J =一周; J <7; J +){
如果(N ==今天&& isToday){
table.rows [1]細胞[J]的className =“tdtoday”。;
}否則{
table.rows [1]細胞[J]的className =“。;
}
table.rows [1]細胞[J]的innerHTML = N。;
N + +;
}
(I = 2;我<7; I + +){
(J = 0 J <7; J + +){
如果(> LASTDAY){
table.rows [I]。細胞[J]。的innerHTML =“”
}
其他{
如果(N ==今天&& isToday){
[我] table.rows細胞[J]的className =“tdtoday”。;
}否則{
table.rows [I]細胞[J]的className =“”。
}
table.rows [I]細胞[J]的innerHTML = N。;
N + +;
}
}
}
}
/ /獲得月份的天數
功能getMonthNum(月,年){
一個月=月 - 1;
LeapYear =((年%4 == 0 &&每年100%= 0)| |年%400 == 0)?真:假的;
VAR monthNum;
開關(parseInt(月)){
情況下,0:
例2:
案例4:
案例6:
案例7:
案例9:
案例11:
monthNum = 31;
打破;
案例3:
案例5:
例8:
案件10:
monthNum = 30;
打破;
例1:
monthNum = LeapYear?29:28;
}
返回monthNum;
}
/ /每一列的懸掛事件改變當前樣式
$(“#壓延TD:(tdtoday)”)。懸停(函數(){
$(本)。addClass(“懸停”)
},函數(){
$(本)示例對(“懸停”);
});
/ /點擊時間列表事件
$(“#壓延TD”)。點擊(函數(){
VAR DV = $(本)HTML();
(DV!=“”){
VAR STR =“”;
如果(options.isTime){
VAR ND =新的日期();
STR = $(“#年”)VAL()+ options.fuhao + $(“#月”)VAL()+ options.fuhao + DV +“+ nd.getHours()”:“+ ND getMinutes()+“:”nd.getSeconds();
}否則{
STR = $(“#年”)VAL()+ options.fuhao + $(“#月”)VAL()。+ options.fuhao + DV;
}
$ mhInput.val(STR);
$(“。遮照”),隱藏();
$(“日歷”),隱藏();
}
});
/ /文本框綁定事件
美元mhInput.live(options.Event,功能(E){
IOF = ??$(本),偏移();
$(“日歷”)。CSS({“左”:iof.left + options.Left,“頂”:iof.top + options.Top})。
$(“。遮照”)表明();
$(“日歷”),表明();
});
/ /點擊遮罩層關閉時間層
$(“。遮照”)。生活(“點擊”,函數(){
$(“日歷”),隱藏();
$()();
});
};
});在線演示和下載 本文由用戶 dengjianbin 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!