主调用函数是 setday(this,[object])和setday(this),[object]是控件输出的控件名,举两个例子:
一、<input name=txt><input type=button value=setday onclick="setday(this,document.all.txt)">
二、<input onfocus="setday(this)">
手动调整了 分 和 秒 的初始值为0,也可手动调整回取现在时间得 分 和 秒
//主调用函数是setday(this,[object])和setday(this),[object]是控件输出的控件名,举两个例子:
//一、<inputname=txt><inputtype=buttonvalue=setdayonclick="setday(this,document.all.txt)">
//二、<inputonfocus="setday(this)">
varbMoveable=true;
varstrFrame;
document.writeln('<iframeid=endDateLayerframeborder=0width=180height=220style="position:absolute;z-index:9998;display:none"></iframe>');
strFrame='<style>';
strFrame+='INPUT.button{BORDER-RIGHT:#63A3E91pxsolid;BORDER-TOP:#63A3E91pxsolid;BORDER-LEFT:#63A3E91pxsolid;';
strFrame+='BORDER-BOTTOM:#63A3E91pxsolid;BACKGROUND-COLOR:#63A3E9;font-family:宋体;}';
strFrame+='TD{FONT-SIZE:9pt;font-family:宋体;}';
strFrame+='</style>';
strFrame+='<scr'+'ipt>';
strFrame+='vardatelayerx,datelayery;';
strFrame+='varbDrag;';
strFrame+='functiondocument.onmousemove()';
strFrame+='{if(bDrag&&window.event.button==1)';
strFrame+='{varDateLayer=parent.document.all.endDateLayer.style;';
strFrame+='DateLayer.posLeft+=window.event.clientX-datelayerx;';
strFrame+='DateLayer.posTop+=window.event.clientY-datelayery;}}';
strFrame+='functionDragStart()';
strFrame+='{varDateLayer=parent.document.all.endDateLayer.style;';
strFrame+='datelayerx=window.event.clientX;';
strFrame+='datelayery=window.event.clientY;';
strFrame+='bDrag=true;}';
strFrame+='functionDragEnd(){';
strFrame+='bDrag=false;}';
strFrame+='</scr'+'ipt>';
strFrame+='<divstyle="z-index:9999;position:absolute;left:0;top:0;"onselectstart="returnfalse">';
strFrame+='<spanid=tmpSelectYearLayerstyle="z-index:9999;position:absolute;top:3;left:19;display:none"></span>';
strFrame+='<spanid=tmpSelectMonthLayerstyle="z-index:9999;position:absolute;top:3;left:78;display:none"></span>';
strFrame+='<spanid=tmpSelectHourLayerstyle="z-index:9999;position:absolute;top:188;left:35px;display:none"></span>';
strFrame+='<spanid=tmpSelectMinuteLayerstyle="z-index:9999;position:absolute;top:188;left:77px;display:none"></span>';
strFrame+='<spanid=tmpSelectSecondLayerstyle="z-index:9999;position:absolute;top:188;left:119px;display:none"></span>';
strFrame+='<tableborder=1cellspacing=0cellpadding=0width=142height=160bordercolor=#63A3E9bgcolor=#63A3E9>';
strFrame+='<tr><tdwidth=142height=23bgcolor=#FFFFFF>';
strFrame+='<tableborder=0cellspacing=1cellpadding=0width=158height=23>';
strFrame+='<tralign=center>';
strFrame+='<tdwidth=16align=centerbgcolor=#63A3E9style="font-size:12px;cursor:hand;color:#ffffff"';
strFrame+='onclick="parent.meizzPrevM()"title="向前翻1月"><b><</b></td>';
strFrame+='<tdwidth=60align="center"bgcolor="#63A3E9"style="font-size:12px;cursor:hand"';
strFrame+='onmouseover="style.backgroundColor='#aaccf3'"';
strFrame+='onmouseout="style.backgroundColor='#63A3E9'"';
strFrame+='onclick="parent.tmpSelectYearInnerHTML(this.innerText.substring(0,4))"';
strFrame+='title="点击这里选择年份"><spanid=meizzYearHead></span></td>';
strFrame+='<tdwidth=48align="center"style="font-size:12px;font-color:#ffffff;cursor:hand"';
strFrame+='bgcolor="#63A3E9"onmouseover="style.backgroundColor='#aaccf3'"';
strFrame+='onmouseout="style.backgroundColor='#63A3E9'"';
strFrame+='onclick="parent.tmpSelectMonthInnerHTML(this.innerText.length==3?this.innerText.substring(0,1):this.innerText.substring(0,2))"';
strFrame+='title="点击这里选择月份"><spanid=meizzMonthHead></span></td>';
strFrame+='<tdwidth=16bgcolor=#63A3E9align=centerstyle="font-size:12px;cursor:hand;color:#ffffff"';
strFrame+='onclick="parent.meizzNextM()"title="向后翻1月"><b>></b></td>';
strFrame+='</tr>';
strFrame+='</table></td></tr>';
strFrame+='<tr><tdwidth=142height=18>';
strFrame+='<tableborder=0cellspacing=0cellpadding=2bgcolor=#63A3E9'+(bMoveable?'onmousedown="DragStart()"onmouseup="DragEnd()"':'');
strFrame+='BORDERCOLORLIGHT=#63A3E9BORDERCOLORDARK=#FFFFFFwidth=140height=20style="cursor:'+(bMoveable?'move':'default')+'">';
strFrame+='<tr><tdstyle="font-size:12px;color:#ffffff"width=20> 日</td>';
strFrame+='<tdstyle="font-size:12px;color:#FFFFFF"> 一</td><tdstyle="font-size:12px;color:#FFFFFF"> 二</td>';
strFrame+='<tdstyle="font-size:12px;color:#FFFFFF"> 三</td><tdstyle="font-size:12px;color:#FFFFFF"> 四</td>';
strFrame+='<tdstyle="font-size:12px;color:#FFFFFF"> 五</td><tdstyle="font-size:12px;color:#FFFFFF"> 六</td></tr>';
strFrame+='</table></td></tr>';
strFrame+='<tr><tdwidth=142height=120>';
strFrame+='<tableborder=1cellspacing=2cellpadding=2BORDERCOLORLIGHT=#63A3E9BORDERCOLORDARK=#FFFFFFbgcolor=#fff8ecwidth=140height=120>';
varn=0;for(j=0;j<5;j++)...{strFrame+='<tralign=center>';for(i=0;i<7;i++)...{
strFrame+='<tdwidth=20height=20id=meizzDay'+n+'style="font-size:12px"onclick=parent.meizzDayClick(this.innerText,0)></td>';n++;}
strFrame+='</tr>';}
strFrame+='<tralign=center>';
for(i=35;i<37;i++)strFrame+='<tdwidth=20height=20id=meizzDay'+i+'style="font-size:12px"onclick="parent.meizzDayClick(this.innerText,0)"></td>';
strFrame+='<tdcolspan=5align=rightstyle="color:#1478eb"><spanonclick="parent.setNull()"style="font-size:12px;cursor:hand"';
strFrame+='onmouseover="style.color='#ff0000'"onmouseout="style.color='#1478eb'"title="将日期置空">置空</span> <spanonclick="parent.meizzToday()"style="font-size:12px;cursor:hand"';
strFrame+='onmouseover="style.color='#ff0000'"onmouseout="style.color='#1478eb'"title="当前日期时间">当前</span> <spanstyle="cursor:hand"id=evaAllOKonmouseover="style.color='#ff0000'"onmouseout="style.color='#1478eb'"onclick="parent.closeLayer()"title="关闭日历">关闭 </span></td></tr>';
strFrame+='</table></td></tr><tr><td>';
strFrame+='<tableborder=0cellspacing=1cellpadding=0width=100%bgcolor=#FFFFFFheight=22>';
strFrame+='<trbgcolor="#63A3E9"><tdid=bUseTimeLayerwidth=30style="cursor:hand"title="点击这里启用/禁用时间"';
strFrame+='onmouseover="style.backgroundColor='#aaccf3'"align=centeronmouseout="style.backgroundColor='#63A3E9'"';
strFrame+='onclick="parent.UseTime(this)">';
strFrame+='<span></span></td>';
strFrame+='<tdstyle="cursor:hand"onclick="parent.tmpSelectHourInnerHTML(this.innerText.length==3?this.innerText.substring(0,1):this.innerText.substring(0,2))"';
strFrame+='onmouseover="style.backgroundColor='#aaccf3'"onmouseout="style.backgroundColor='#63A3E9'"';
strFrame+='title="点击这里选择时间"align=centerwidth=42>';
strFrame+='<spanid=meizzHourHead></span></td>';
strFrame+='<tdstyle="cursor:hand"onclick="parent.tmpSelectMinuteInnerHTML(this.innerText.length==3?this.innerText.substring(0,1):this.innerText.substring(0,2))"';
strFrame+='onmouseover="style.backgroundColor='#aaccf3'"onmouseout="style.backgroundColor='#63A3E9'"';
strFrame+='title="点击这里选择时间"align=centerwidth=42>';
strFrame+='<spanid=meizzMinuteHead></span></td>';
strFrame+='<tdstyle="cursor:hand"onclick="parent.tmpSelectSecondInnerHTML(this.innerText.length==3?this.innerText.substring(0,1):this.innerText.substring(0,2))"';
strFrame+='onmouseover="style.backgroundColor='#aaccf3'"onmouseout="style.backgroundColor='#63A3E9'"';
strFrame+='title="点击这里选择时间"align=centerwidth=42>';
strFrame+='<spanid=meizzSecondHead></span></td>';
strFrame+='</tr></table></td></tr></table></div>';
window.frames.endDateLayer.document.writeln(strFrame);
window.frames.endDateLayer.document.close();//解决ie进度条不结束的问题
//====================================================WEB页面显示部分======================================================
varoutObject;
varoutButton;//点击的按钮
varoutDate="";//存放对象的日期
varbUseTime=false;//是否使用时间
varodatelayer=window.frames.endDateLayer.document.all;//存放日历对象
varodatelayer=window.endDateLayer.document.all;
//odatelayer.bUseTimeLayer.innerText="NO";
bImgSwitch();
odatelayer.bUseTimeLayer.innerHTML=bImg;
functionsetday(tt,obj)//主调函数
...{
if(arguments.length>2)...{alert("对不起!传入本控件的参数太多!");return;}
if(arguments.length==0)...{alert("对不起!您没有传回本控件任何参数!");return;}
vardads=document.all.endDateLayer.style;
varth=tt;
varttop=tt.offsetTop;//TT控件的定位点高
varthei=tt.clientHeight;//TT控件本身的高
vartleft=tt.offsetLeft;//TT控件的定位点宽
varttyp=tt.type;//TT控件的类型
while(tt=tt.offsetParent)...{ttop+=tt.offsetTop;tleft+=tt.offsetLeft;}
dads.top=(ttyp=="image")?ttop+thei:ttop+thei+6;
dads.left=tleft;
outObject=(arguments.length==1)?th:obj;
outButton=(arguments.length==1)?null:th;//设定外部点击的按钮
//根据当前输入框的日期显示日历的年月
varreg=/^(d+)-(d...{1,2})-(d...{1,2})/;//不含时间
varr=outObject.value.match(reg);
if(r!=null)...{
r[2]=r[2]-1;
vard=newDate(r[1],r[2],r[3]);
if(d.getFullYear()==r[1]&&d.getMonth()==r[2]&&d.getDate()==r[3])
...{
outDate=d;
parent.meizzTheYear=r[1];
parent.meizzTheMonth=r[2];
parent.meizzTheDate=r[3];
}
else
...{
outDate="";
}
meizzSetDay(r[1],r[2]+1);
}
else
...{
outDate="";
meizzSetDay(newDate().getFullYear(),newDate().getMonth()+1);
}
dads.display='';
//判断初始化时是否使用时间,非严格验证
//if(outObject.value.length>10)
//{
bUseTime=true;
bImgSwitch();
odatelayer.bUseTimeLayer.innerHTML=bImg;
meizzWriteHead(meizzTheYear,meizzTheMonth);
//}
//else
//{
//bUseTime=false;
//color: #0
分享到:
相关推荐
7. **兼容性**:考虑到浏览器的多样性,编写JavaScript日历控件时需要关注跨浏览器的兼容性问题,确保在不同的浏览器(如Chrome、Firefox、Safari、Edge和IE)上都能正常工作。 在提供的文件名中,"calendar.html"...
JavaScript(JS)日历控件是网页开发中常用的一种组件,用于展示日期选择功能,通常在表单中作为输入辅助工具出现。它们可以提供用户友好的界面,方便用户选择日期,而无需手动输入。以下是对JS日历控件的一些详细...
JavaScript日历控件是网页开发中常用的一种交互元素,它能帮助用户方便地选择日期,常见于表单输入、事件安排或时间相关的功能。在给定的资源中,包含了六种不同样式的JavaScript日历,这些日历可能具有不同的设计...
总的来说,这个JavaScript日历控件通过其丰富的功能和易用性,为网页开发者提供了一个强大的日期和时间选择工具,可以满足各种各样的应用场景,并且能够根据需求进行定制,提升用户的交互体验。
在JavaScript编程中,日历控件是一种常见的交互元素,它允许用户方便地选择日期,常用于表单输入、事件管理或时间安排等场景。本文将深入探讨“js日历控件集合”这一主题,旨在为你提供多种js日历插件的选择和使用...
JavaScript日历控件是网页开发中常用的一种交互元素,它允许用户在网页上方便地选择日期,常用于表单输入、事件安排或者时间相关的功能。本文将深入探讨JavaScript日历控件的实现原理、常见库及其应用。 1. **基本...
总之,JavaScript日历控件是一个结合了前端技术与用户体验设计的组件,通过JavaScript的动态特性,我们可以创建功能丰富、用户友好的日期选择工具。在实际项目中,还可以考虑与其他库(如jQuery、React或Vue)集成,...
在网页开发中,JavaScript(JS)常常用于创建交互式的用户界面,其中日历控件是一种常见且实用的功能,尤其在处理日期输入时。本资源提供了一个兼容Internet Explorer(IE)和Firefox浏览器的JS日历控件,允许用户...
JavaScript日历控件是一种在网页上实现日期选择功能的交互元素,它允许用户通过图形界面轻松选择日期,常用于表单填写、事件预订等场景。本文将深入探讨JS日历控件的实现原理、特点以及如何在实际项目中应用。 一、...
**JS日历选择控件——My97 DatePicker详解** 在网页设计中,用户经常需要输入日期,为了提高用户体验,开发者通常会使用日历选择控件。My97 DatePicker 是一个非常流行的JavaScript日历插件,它功能强大,自定义...
JavaScript日历控件是网页应用中常见的一种交互元素,它允许用户方便地选择日期,常用于事件安排、预订系统或表单输入等场景。在这个英文版的JS日历控件中,开发者为英文操作系统的用户提供了友好的界面和功能。 ...
在本案例中,我们讨论的是一个具有时间选择功能的日历控件,它支持选择时、分、秒,这对于需要精确时间输入的应用场景非常有用。这种控件通常通过JavaScript实现,因为它可以提供动态交互性和灵活性。 1. **...
本主题将深入探讨“带有时间的日历控件”,一个在Google和IE浏览器中均能良好运行的组件,以及相关的JavaScript(js)技术。 首先,我们来理解“带有时间”的日历控件。传统的日历控件通常只显示日期,而“带有时间...
本资源提供了一个基于JavaScript实现的带时间的日历控件,适用于那些需要用户输入精确日期和时间的场景。下面将详细探讨这个控件的设计原理、实现方法以及可能的应用场景。 首先,日历控件的核心功能是展示一个月的...
JavaScript编写的选择性输入日历控件。首先引入该JS文件,某个文本框需要输入日期时,为该文本框添加onfocus事件,事件处理函数为new Calendar(0).show(this)。即添加“onfocus='new Calendar(0).show(this)”。
在网页设计中,一个简单好看的js日历控件可以极大地提升用户体验,尤其是在需要用户输入或选择日期的场景。 创建一个js日历控件,主要涉及以下几个知识点: 1. **DOM操作**:JavaScript通过Document Object Model...
综上所述,Kalendajs是一个强大且灵活的JavaScript日历插件,它为开发者提供了创建功能丰富的日期选择器的能力。通过深入了解其工作原理和API,开发者可以轻松地集成到自己的项目中,提升用户在日期选择方面的交互...
JS日历控件是利用JavaScript编程语言实现的此类功能,它能够提供直观、友好的用户体验。本文将深入探讨JS日历控件的原理、实现方式以及相关知识点。 一、日历控件的基本概念 日历控件是一种用户界面组件,它以日历...
在这种情况下,我们讨论的是一个特殊的日历控件,它不仅包含日期选择功能,还集成了时间选择,这对于处理时间和日期相关的应用程序非常重要。这个控件是用JavaScript(js)实现的,JavaScript是一种广泛使用的客户端...
在JavaScript(JS)中,日历控件是一种常见的交互元素,用于用户友好地选择日期。在许多Web应用程序中,特别是那些涉及到日期输入的场景,如预订系统、日程管理等,这种控件非常实用。本篇文章将深入探讨如何创建一...