超漂亮的JS日历控件
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
超漂亮的js日历控件,代码有些复杂。
[code]
";
for(var i=1;i<7;i++)
for(var j=0;j<7;j++)
theCaHtml = theCaHtml+""+starCaTran(year,month,theCaArr[i][j]).split("-")[2]+"";
return theCaHtml+" ";
}
function starCaTran(year,month,date){
with(new Date(year,month-1,date))
return getYear() + "-" +(getMonth()+1) + "-" + getDate();
}
function TranYearMonthTitle(year,month){
with(new Date(year,month-1,1))
return "" + getYear() + "" + "年" + "" + (getMonth()+1) + "" + "月" ;
}
function showC(){
if(event.propertyName != "innerHTML")return;
window.theCalendar.year = new Number(document.all.titleYear.getElementsByTagName("span")[0].innerHTML);
window.theCalendar.month = new Number(document.all.titleYear.getElementsByTagName("span")[1].innerHTML);
window.document.all.calendarBox.innerHTML=makeCalendarHtmlStr(window.theCalendar.year,window.theCalendar.month);
window.document.all.calendarBox.show = show;window.document.all.calendarBox.show();
}
function showMore(starNum,endNum,selectedValue){
var obj = window.event.srcElement;
var selectedIndex = selectedValue - starNum;
if(obj.selectBox){
obj.selectBox.selectedIndex = selectedIndex;
return obj.selectBox.show(document.all.calendarBox.offsetHeight + document.all.weekNameBox.offsetHeight );
}
var selectBox = window.document.createElement("div");
selectBox.className = "selectBox";
selectBox.style.height = 0;
selectBox.style.top = window.event.clientY - window.event.offsetY + window.event.srcElement.offsetHeight;
selectBox.style.left = window.event.clientX - window.event.offsetX ;
selectBox.show = showBox;
selectBox.selectedIndex = selectedIndex;
selectBox.onclick = function(){
var selectedObj = window.event.srcElement;
if( "nobr" == selectedObj.tagName.toLowerCase() && selectBox.contains(selectedObj))
{
if(obj.innerHTML != selectedObj.innerHTML)obj.innerHTML = selectedObj.innerHTML;
}
}
selectBox.onlosecapture = alert
var iString = "";
for(var i=starNum;i<=endNum;i++){
iString += "" } selectBox.insertAdjacentHTML ("afterBegin",iString); window.document.body.appendChild(selectBox); obj.selectBox = selectBox; obj.selectBox.show(document.all.calendarBox.offsetHeight + document.all.weekNameBox.offsetHeight ); } function showBox(iHeight) { var box = this; box.style.height =1; box.style.display = "block"; window.clearInterval(box.timeHandle); box.timeHandle = window.setInterval(interValHandle,1); var s = 0,t =1 ; function interValHandle() { box.scrollTop=1000000; s = s + t*t; t += 0.5; box.style.height = parseInt(box.style.height) + Math.floor(s); box.style.width = 65 / iHeight * box.offsetHeight; if( box.offsetHeight > iHeight ) { window.clearInterval(box.timeHandle); box.style.height = iHeight; box.scrollTop = box.childNodes[0].offsetHeight*box.selectedIndex; box.getElementsByTagName("nobr")[box.selectedIndex].style.cssText='background-color:#00006C;color:#fff;'; window.document.attachEvent("onclick", box.hide=function() { box.style.display = "none"; window.document.detachEvent("onclick",box.hide) } ); } } } </script> <script language="javascript"> function buttonOver(){ var obj = window.event.srcElement; if(obj.tagName.toLowerCase() == "span" && obj.className.replace(/controlButton/ig,"star") == "star" ) { obj.runtimeStyle.cssText="border-color:#fff #606060 #808080 #fff;padding:3 0 0 0 "; } if(obj.tagName.toLowerCase() == "span" && obj.parentNode.className.replace(/Ctable/ig,"star") == "star" ) { obj.style.backgroundColor = "#fff"; } } function buttonOut(){ var obj = window.event.srcElement; if(obj.tagName.toLowerCase() == "span" && obj.className.replace(/controlButton/ig,"star") == "star" ) { obj.runtimeStyle.cssText = ""; } if(obj.tagName.toLowerCase() == "span" && obj.parentNode.className.replace(/Ctable/ig,"star") == "star" ) { window.setTimeout(function(){obj.style.backgroundColor = ""; },300); } } function buttonDown(){ var obj = window.event.srcElement; if(obj.tagName.toLowerCase() == "span" && obj.className.replace(/controlButton/ig,"star") == "star" ) { obj.setCapture(); obj.runtimeStyle.borderColor="#808080 #fefefe #fefefe #808080"; } } function buttonUp(){ var obj = window.event.srcElement; if(obj.tagName.toLowerCase() == "span" && obj.className.replace(/controlButton/ig,"star") == "star" ) { obj.releaseCapture(); obj.runtimeStyle.cssText =""; } } function doCmd(){ var obj = window.event.srcElement; if(obj.tagName.toLowerCase() == "span" && obj.className.replace(/controlButton/ig,"star") == "star" ) { switch(obj.getAttribute("cmd")) { case "py": window.document.all.titleYear.innerHTML=window.TranYearMonthTitle(window.theCalendar.year-1,window.theCalendar.month); window.document.all.calendarBox.innerHTML=makeCalendarHtmlStr(window.theCalendar.year-1,window.theCalendar.month); break; case "pm": window.document.all.titleYear.innerHTML=window.TranYearMonthTitle(window.theCalendar.year,window.theCalendar.month-1); window.document.all.calendarBox.innerHTML=makeCalendarHtmlStr(window.theCalendar.year,window.theCalendar.month-1); break; case "nm": window.document.all.titleYear.innerHTML=window.TranYearMonthTitle(window.theCalendar.year,window.theCalendar.month+1); window.document.all.calendarBox.innerHTML=makeCalendarHtmlStr(window.theCalendar.year,window.theCalendar.month+1); break; case "ny": window.document.all.titleYear.innerHTML=window.TranYearMonthTitle(window.theCalendar.year+1,window.theCalendar.month); window.document.all.calendarBox.innerHTML=makeCalendarHtmlStr(window.theCalendar.year+1,window.theCalendar.month); break; } window.document.all.calendarBox.show(); window.currentSelectDate = starCaTran(Nyear,Nmonth,Ndate); window.currentActiveItem = window.document.getElementById(currentSelectDate); if( window.currentActiveItem )window.currentActiveItem.runtimeStyle.cssText = "background:url(choiceit.gif) no-repeat 14px 6px;color:#000;padding-top:1px;font-weight:bold"; } } function show() { var box = this; window.clearTimeout(box.timeHandle); var CdateBoxs = this.getElementsByTagName("span"); for(var i=0;i 333444
该文章在 2010/4/30 14:49:08 编辑过 |
关键字查询
相关文章
正在查询... |