⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 popcalendar.js

📁 个人网站比较简短
💻 JS
📖 第 1 页 / 共 5 页
字号:
}

function PopCalCalendarVisible()
{
	for( var i = 0; i <= lPopCalList; i++ )
	{
		if ( objPopCalList[i].crossobj.visibility != "hidden" ) 
		{
			return (objPopCalList[i])
		}
	}
	return (null)
}

function PopCalShow(ctl, format, from, to, execute, overwrite)
{
	var PopCal=PopCalInstanceCreated()
	var CenturyOn = true
	if (PopCal)
	{
		if (PopCal.initialized==1)
		{
			if (objPopCalendar.ie)
			{
				if (PopCal.LoadElements==-1)
				{
					var oElement = document.all.tags( 'Select' )
					for( var i = 0; i < oElement.length; i++ )
					{
						PopCal.Elements[PopCal.Elements.length]= oElement[i]
					}
					var oElement = document.all.tags( 'Applet' )
					for( var i = 0; i < oElement.length; i++ )
					{
						PopCal.Elements[PopCal.Elements.length]= oElement[i]
					}
					PopCal.LoadElements = PopCal.Elements.length
				}
			}
			objPopCalendar.movePopCal = false

			if (objPopCalendar.timeoutID3 != null)
			{
				clearTimeout(objPopCalendar.timeoutID3)
				objPopCalendar.timeoutID3 = null
			}
			var objPopCalVisible = PopCalCalendarVisible()
			if ( objPopCalVisible == null ) 
			{

				objPopCalendar.overWriteSelectWeekend = objPopCalendar.overWriteWeekend
				objPopCalendar.overWriteSelectHoliday = objPopCalendar.overWriteHoliday
				
				objPopCalendar.overWriteWeekend = null
				objPopCalendar.overWriteHoliday = null

				if (overwrite!=null)
				{
					overwrite = PopCalPad(overwrite, 3, " ", "R")
					if (("01").indexOf(overwrite.substr(0,1))!=-1)
					{
						objPopCalendar.overWriteSelectWeekend = parseInt(overwrite.substr(0,1), 10)
					}
					if (("01").indexOf(overwrite.substr(1,1))!=-1)
					{
						objPopCalendar.overWriteSelectHoliday = parseInt(overwrite.substr(1,1), 10)
					}
				}

				objPopCalendar.commandExecute = null

				if (execute!=null)
				{
					objPopCalendar.commandExecute = execute
				}

				if (objPopCalendar.ie)
				{
					objPopCalendar.onKeyPress = document.onkeypress
					document.onkeypress = PopCalPressEscape
					objPopCalendar.onmouseup = document.onmouseup
					document.onmouseup=new Function("objPopCalendar.movePopCal=false;if(event.button==2){objPopCalendar.bShow=false;PopCalClickDocumentBody();};")
					if (PopCal.move == 1)
					{
						objPopCalendar.onmousemove = document.onmousemove
						document.onmousemove=PopCalTrackMouse
					}
					objPopCalendar.onresize = window.onresize
					window.onresize = PopCalResizeWindow
					
					objPopCalendar.onscroll = window.onscroll
					window.onscroll = PopCalScroll
				}
				else
				{
					objPopCalendar.onKeyPress = document.onkeyup
					document.captureEvents(Event.KEYUP)
					document.onkeyup = PopCalPressEscape
				}


				objPopCalendar.onClick = document.onclick
				document.onclick = PopCalClickDocumentBody

				if (objPopCalendar.ie)
				{
					objPopCalendar.onSelectStart = document.onselectstart
					document.onselectstart=new Function('return(false);')

					objPopCalendar.onContextMenu = document.oncontextmenu
					document.oncontextmenu=new Function('return(false);')
				}

				objPopCalendar.yearConstructed=false
				objPopCalendar.monthConstructed=false

				objPopCalendar.ctlToPlaceValue = ctl
				objPopCalendar.dateFormat=""

				if (format!=null)
				{
					objPopCalendar.dateFormat = format.toLowerCase()
				}
				else if (PopCal.defaultFormat!=null)
				{
					objPopCalendar.dateFormat = PopCal.defaultFormat.toLowerCase()
				}

				objPopCalendar.dateFrom = 01
				objPopCalendar.monthFrom = 00
				objPopCalendar.yearFrom = 1900
				objPopCalendar.dateUpTo = 31
				objPopCalendar.monthUpTo = 11
				objPopCalendar.yearUpTo = 2099

				objPopCalendar.dateSelected = 0
				objPopCalendar.timeSelected = 0
				objPopCalendar.monthSelected = objPopCalendar.monthNow
				objPopCalendar.yearSelected = objPopCalendar.yearNow

				if (PopCalSetDMY(ctl.value, objPopCalendar.dateFormat))
				{
					objPopCalendar.dateSelected = objPopCalendar.oDate
					objPopCalendar.monthSelected = objPopCalendar.oMonth
					objPopCalendar.yearSelected = objPopCalendar.oYear
				}

				if (from!=null)
				{
					if ((from.toLowerCase() == "hoy") || (from.toLowerCase() == "now"))
					{
						objPopCalendar.dateFrom = objPopCalendar.dateNow
						objPopCalendar.monthFrom = objPopCalendar.monthNow
						objPopCalendar.yearFrom = objPopCalendar.yearNow
					}
					else if (PopCalSetDMY(from, objPopCalendar.dateFormat))
					{
						objPopCalendar.dateFrom = objPopCalendar.oDate
						objPopCalendar.monthFrom = objPopCalendar.oMonth
						objPopCalendar.yearFrom = objPopCalendar.oYear
					}
				}

				if (to!=null)
				{
					if ((to.toLowerCase() == "hoy") || (to.toLowerCase() == "now"))
					{
						objPopCalendar.dateUpTo = objPopCalendar.dateNow
						objPopCalendar.monthUpTo = objPopCalendar.monthNow
						objPopCalendar.yearUpTo = objPopCalendar.yearNow
					}
					else if (PopCalSetDMY(to, objPopCalendar.dateFormat))
					{
						objPopCalendar.dateUpTo = objPopCalendar.oDate
						objPopCalendar.monthUpTo = objPopCalendar.oMonth
						objPopCalendar.yearUpTo = objPopCalendar.oYear
					}
				}

				if (!PopCalCenturyOn(objPopCalendar.dateFormat))
				{
					if (PopCalDateFrom() < PopCalPad(1900 + objPopCalendar.centuryLimit, 4, "0", "L") + "0001")
					{
						objPopCalendar.dateFrom = 01
						objPopCalendar.monthFrom = 00
						objPopCalendar.yearFrom = 1900 + objPopCalendar.centuryLimit
					}

					if (PopCalDateUpTo() >  PopCalPad(2000 + (objPopCalendar.centuryLimit-1), 4, "0", "L" ) + "1131")
					{
						objPopCalendar.dateUpTo = 31
						objPopCalendar.monthUpTo = 11
						objPopCalendar.yearUpTo = 2000 + (objPopCalendar.centuryLimit-1)
					}
				}

				if (PopCalDateFrom() > PopCalDateUpTo())
				{
					objPopCalendar.oDate = objPopCalendar.dateFrom
					objPopCalendar.oMonth = objPopCalendar.monthFrom
					objPopCalendar.oYear = objPopCalendar.yearFrom

					objPopCalendar.dateFrom = objPopCalendar.dateUpTo
					objPopCalendar.monthFrom = objPopCalendar.monthUpTo
					objPopCalendar.yearFrom = objPopCalendar.yearUpTo

					objPopCalendar.dateUpTo = objPopCalendar.oDate
					objPopCalendar.monthUpTo = objPopCalendar.oMonth
					objPopCalendar.yearUpTo = objPopCalendar.oYear
				}

				if (PopCalDateSelect() < PopCalDateFrom())
				{
					objPopCalendar.dateSelected = 0
					objPopCalendar.monthSelected = objPopCalendar.monthFrom
					objPopCalendar.yearSelected = objPopCalendar.yearFrom
				}

				if (PopCalDateSelect() > PopCalDateUpTo())
				{
					objPopCalendar.dateSelected = 0
					objPopCalendar.monthSelected = objPopCalendar.monthUpTo
					objPopCalendar.yearSelected = objPopCalendar.yearUpTo
				}

				objPopCalendar.odateSelected = objPopCalendar.dateSelected
				objPopCalendar.omonthSelected = objPopCalendar.monthSelected
				objPopCalendar.oyearSelected = objPopCalendar.yearSelected

				PopCalMoveDefaultPos()

				if (objPopCalendar.ie)
				{
					if ((PopCal.move == 1) && (PopCal.saveMovePos == 1))
					{
						if (objPopCalendar.ctlToPlaceValue != null)
						{
							if (objPopCalendar.ctlToPlaceValue.CalendarTop != null)
							{
								objPopCalendar.crossobj.top = objPopCalendar.ctlToPlaceValue.CalendarTop
							}
							if (objPopCalendar.ctlToPlaceValue.CalendarLeft != null)
							{
								objPopCalendar.crossobj.left = objPopCalendar.ctlToPlaceValue.CalendarLeft
							}
							PopCalShowAllElements()							
						}
					}
				}

				PopCalConstructCalendar()
				
				PopCalFadeIn()

				PopCalScroll()
				
				objPopCalendar.bShow = (PopCal.GXLink == 0)

			}
			else
			{
				objCurrentCalendar = objPopCalendar
				
				objPopCalendar = objPopCalVisible
				
				objPopCalendar.executeFade = (objPopCalendar.ctlNow==ctl)
				objCurrentCalendar.executeFade = (objPopCalendar.ctlNow==ctl)
				
				PopCalHideCalendar()

				if (objPopCalendar.ctlToPlaceValue != null)
				{
					objPopCalendar.ctlToPlaceValue = null
				}
				objPopCalendar = objCurrentCalendar
				if (objPopCalendar!=objPopCalVisible)
				{
					objCurrentCalendar.ctlNow = null
				}

				if (objPopCalendar.ctlNow!=ctl) 
				{
					objPopCalendar.show(ctl, format, from, to, execute, overwrite)
				}
				
				objPopCalendar.executeFade = true
				objPopCalVisible.executeFade = true
			}
			objPopCalendar.ctlNow = ctl
		}
	}
}

function PopCalResizeWindow()
{
	if ((objPopCalendar.ctlToPlaceValue.CalendarTop == null) && (objPopCalendar.ctlToPlaceValue.CalendarLeft == null))
	{
		PopCalDownMonth()
		PopCalDownYear()
		PopCalMoveDefault()
	}
}

function PopCalScroll()
{
	if (objPopCalendar.crossobj.visibility != "hidden")
	{
		if ((objPopCalendar.ctlToPlaceValue.CalendarTop == null) && (objPopCalendar.ctlToPlaceValue.CalendarLeft == null))
		{
			PopCalDownMonth()
			PopCalDownYear()
			PopCalMoveDefault()	
		}
	}
}

function PopCalMoveDefaultPos()
{
	var PopCal = PopCalInstanceCreated()
	var leftpos=0
	var toppos=0
	var aTag = objPopCalendar.ctlToPlaceValue
	var lDivTop = -1
	
	do 
	{
		aTag = aTag.offsetParent
		leftpos += aTag.offsetLeft
		toppos  += aTag.offsetTop
		if (aTag.tagName == "DIV")
		{
			if (lDivTop == -1)
			{
				lDivTop += (1 + aTag.offsetTop)
			}
			leftpos -= aTag.scrollLeft
			toppos -= aTag.scrollTop

		}
		else if (lDivTop != -1)
		{
			lDivTop += aTag.offsetTop
		}
	} 
	while(aTag.tagName!="BODY")
	
	leftpos = parseInt(PopCal.fixedX==-1 ? objPopCalendar.ctlToPlaceValue.offsetLeft + leftpos: PopCal.fixedX, 10)
	toppos = parseInt(PopCal.fixedY==-1 ? objPopCalendar.ctlToPlaceValue.offsetTop + toppos + objPopCalendar.ctlToPlaceValue.offsetHeight + 7 : PopCal.fixedY, 10)

	if (((leftpos + PopCal.popupSuperCalendar.clientWidth + 10) - aTag.scrollLeft) > aTag.clientWidth)
	{
		leftpos -= ((((leftpos + PopCal.popupSuperCalendar.clientWidth) - aTag.clientWidth) + 10) - aTag.scrollLeft)
	}

	if (toppos < lDivTop)
	{
		toppos = lDivTop
	}
	
	if (((toppos + PopCal.popupSuperCalendar.clientHeight + 65) - aTag.scrollTop) > aTag.clientHeight)
	{
		toppos -= ((((toppos + PopCal.popupSuperCalendar.clientHeight) - aTag.clientHeight) + 65) - aTag.scrollTop)
	}
	
	if 	(leftpos < aTag.scrollLeft + 10)
	{
		leftpos = aTag.scrollLeft + 10
	}
	
	if 	(toppos < aTag.scrollTop + 10)
	{
		toppos = aTag.scrollTop + 10
	}
	
	objPopCalendar.crossobj.left = leftpos
	objPopCalendar.crossobj.top = toppos
}


function PopCalMoveDefault()
{
	var PopCal = PopCalInstanceCreated()
	
	PopCalMoveDefaultPos()

	PopCalMoveShadow()

	PopCalShowAllElements()

	if (PopCal.saveMovePos == 1)
	{
		if (objPopCalendar.ctlToPlaceValue != null)
		{
			objPopCalendar.ctlToPlaceValue.CalendarLeft = null
			objPopCalendar.ctlToPlaceValue.CalendarTop = null

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -