javascript实现calendar

javascript封装的日历插件 一. 调用:<script>ShowCalendar()</ script><br><br>二. 网页调用方法:<br> 1. 加入CSS样式:<br> <br>边框颜色<br>.bordercolor{background-color:#CCCCCC;}<br>日期单元颜色<br>.cellcolor{background-color:#FFFFFF;}<br>标题栏颜色<br>.titlecolor { background-color: #FFFFFF; font-size: 10pt; font-weight: bold }<br>当前日期颜色<br>.todaycolor { background-color: #F0F0F0; border-left: 2 solid #C0C0C0; <br> border-right: 2 solid #808080; border-top: 2 solid #C0C0C0; <br> border-bottom: 2 solid #808080 }<br>每行高度<br>.cellheight{height:30px;font-size:9pt}<br><br><br> 2.用<script src=ShowCalendar.js></ script>载入本代码<br> (保证在调用之前载入,最好在body前)<br><br>三.特点:<br> 1.可在同一网页下调用多个日历<br><br> 2.使用非常方便,只需在要显示的位置插入本函数调用即可. 立即下载

calendar.js的内容:
function showCalendar(id) {
 showx = event.screenX - event.offsetX - 4 - 210 ; // + deltaX;
 showy = event.screenY - event.offsetY + 18; // + deltaY;

 url = "/EduMIS/web/js/calendar/calendar.jsp?id=" + id;
 window.open(url, "日历", "height=180px; width=200px; left="+showx+"px; top="+showy+"px; status=no; directories=yes;scrollbars=no;resizable=no; "  );
}

calendar.jsp的内容:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>日历</title>
<style>
td {
 font-family: Arial, Helvetica, sans-serif;
 font-size: 12px;
}

</style>

</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="180">
<tr><td id=cc>
</td></tr></table>
</body>

<script language="JavaScript">
function RunNian(The_Year)
{
 if ((The_Year%400==0) || ((The_Year%4==0) && (The_Year%100!=0)))
  return true;
 else
  return false;
}
function GetWeekday(The_Year,The_Month)
{
 
 var Allday;
 Allday = 0;
 if (The_Year>2000)
 {
 
  for (i=2000 ;i<The_Year; i++)
   if (RunNian(i))
    Allday += 366;
   else
    Allday += 365;
  for (i=2; i<=The_Month; i++)
  {
   switch (i)
   {
    case 2 :
     if (RunNian(The_Year))
      Allday += 29;
     else
      Allday += 28;
     break;
    case 3 : Allday += 31; break;
    case 4 : Allday += 30; break;
    case 5 : Allday += 31; break;
    case 6 : Allday += 30; break;
    case 7 : Allday += 31; break;
    case 8 : Allday += 31; break;
    case 9 : Allday += 30; break;
    case 10 : Allday += 31; break;
    case 11 : Allday += 30; break;
    case 12 :  Allday += 31; break;
   
   }
  
  }
 }
 
 return (Allday+6)%7;
 

}

function chooseday(The_Year,The_Month,The_Day)
{
 var Firstday;
 var completely_date;
 if (The_Day!=0)
  completely_date = The_Year + "-" + The_Month + "-" + The_Day;
 else
  completely_date = "No Choose";
 //showdate 只是一个为了显示而采用的东西,
 //如果外部想引用这里的时间,可以通过使用 completely_date引用完整日期
 //也可以通过The_Year,The_Month,The_Day分别引用年,月,日
 //当进行月份和年份的选择时,认为没有选择完整的日期
 //showdate.innerText = completely_date;
 Firstday = GetWeekday(The_Year,The_Month);
 ShowCalender(The_Year,The_Month,The_Day,Firstday);
 
}

function clickDay(The_Year,The_Month,The_Day) {

 if(The_Month < 10) {
  The_Month = "0" + The_Month;
 }
 if(The_Day < 10) {
  The_Day = "0" + The_Day;
 }
 var Firstday;
 var completely_date;
 if (The_Day!=0)
  completely_date = The_Year + "-" + The_Month + "-" + The_Day;
 else
  completely_date = "No Choose";
 
 calendarId='<%=request.getParameter("id")%>';
 obj = eval("window.opener.document.all." + calendarId);
 obj.innerText = completely_date;
 window.close();
}

function nextmonth(The_Year,The_Month)
{
 if (The_Month==12)
  chooseday(The_Year+1,1,0);
 else
  chooseday(The_Year,The_Month+1,0);
}

function prevmonth(The_Year,The_Month)
{
 if (The_Month==1)
  chooseday(The_Year-1,12,0);
 else
  chooseday(The_Year,The_Month-1,0);
}

function prevyear(The_Year,The_Month)
{
 chooseday(The_Year-1,The_Month,0);
}

function nextyear(The_Year,The_Month)
{
 chooseday(The_Year+1,The_Month,0);
}

 

 

function ShowCalender(The_Year,The_Month,The_Day,Firstday)
{
// alert(selectedId);
 var showstr;
 var Month_Day;
 var ShowMonth;
 var today;
 today = new Date();
 
 
 
 switch (The_Month)
 {
  case 1 : ShowMonth = "一月"; Month_Day = 31; break;
  case 2 :
   ShowMonth = "二月";
   if (RunNian(The_Year))
    Month_Day = 29;
   else
    Month_Day = 28;
   break;
  case 3 : ShowMonth = "三月"; Month_Day = 31; break;
  case 4 : ShowMonth = "四月"; Month_Day = 30; break;
  case 5 : ShowMonth = "五月"; Month_Day = 31; break;
  case 6 : ShowMonth = "六月"; Month_Day = 30; break;
  case 7 : ShowMonth = "七月"; Month_Day = 31; break;
  case 8 : ShowMonth = "八月"; Month_Day = 31; break;
  case 9 : ShowMonth = "九月"; Month_Day = 30; break;
  case 10 : ShowMonth = "十月"; Month_Day = 31; break;
  case 11 : ShowMonth = "十一月"; Month_Day = 30; break;
  case 12 : ShowMonth = "十二月"; Month_Day = 31; break;
  
 }
 
 
 showstr = "";
 showstr = "<Table cellpadding=0 cellspacing=1 border=1 bordercolor=#70B8B8 width=95% align=center valign=top>" ;
 showstr +=  "<tr><td width=0 style='cursor:hand' onclick=prevyear("+The_Year+"," + The_Month + ")>&lt;&lt;</td><td width=0 bgcolor=#E6F2F2>&nbsp;" + The_Year + "&nbsp;</td><td width=0 onclick=nextyear("+The_Year+","+The_Month+")  style='cursor:hand'>&gt;&gt;</td><td width=0 style='cursor:hand' onclick=prevmonth("+The_Year+","+The_Month+")>&lt;&lt;</td><td width=100 align=center bgcolor=#E6F2F2>" + ShowMonth + "</td><td width=0 onclick=nextmonth("+The_Year+","+The_Month+")  style='cursor:hand'>&gt;&gt;</td></tr>";
 showstr +=  "<tr><td align=center width=100% colspan=6>";
 showstr +=  "<table cellpadding=0 cellspacing=0 border=1 bordercolor=#ffffff width=95%>";
 showstr += "<Tr align=center bgcolor=#ffffff> ";
    showstr += "<td></td>";
 showstr += "</Tr></table>";
 showstr +=  "<table cellpadding=1 cellspacing=1 border=0 bgcolor=#77BBFF width=95%>";
 showstr += "<Tr align=center bgcolor=#E8F3FF> ";
    showstr += "<td><font color=#000000>日</font></td>";
    showstr += "<td><font color=#000000>一</font></td>";
    showstr += "<td><font color=#000000>二</font></td>";
    showstr += "<td><font color=#000000>三</font></td>";
    showstr += "<td><font color=#000000>四</font></td>";
    showstr += "<td><font color=#000000>五</font></td>";
    showstr += "<td><font color=#000000>六</font></td>";
 showstr += "</Tr><tr>";
 
 
 for (i=1; i<=Firstday; i++)
  showstr += "<Td align=center bgcolor=#ffffff>&nbsp;</Td>";
 
 for (i=1; i<=Month_Day; i++)
 {
  if ((The_Year==today.getYear()) && (The_Month==today.getMonth()+1) && (i==today.getDate()))
   bgColor = "#FFCCCC";
  else
   bgColor = "#FFF7FF";
 
  if (The_Day==i) bgColor = "#FFFFCC";
  showstr += "<td align=center bgcolor=" + bgColor + " style='cursor:hand' onclick=clickDay(" + The_Year + "," + The_Month + "," + i + ")>" + i + "</td>";
  Firstday = (Firstday + 1)%7;
  if ((Firstday==0) && (i!=Month_Day)) showstr += "</tr><tr>";
 }
 if (Firstday!=0)
 {
  for (i=Firstday; i<7; i++)
   showstr += "<td align=center bgcolor=#ffffff>&nbsp;</td>";
  showstr += "</tr>";
 }
 
 showstr += "</tr></table>";
 showstr +=  "<table cellpadding=0 cellspacing=0 border=1 bordercolor=#ffffff width=95%>";
 showstr += "<Tr align=center bgcolor=#ffffff> ";
    showstr += "<td></td>";
 showstr += "</Tr></table></td></tr></table>";
 cc.innerHTML = showstr; 
 

}


</script>

<script language="JavaScript">

 var The_Year,The_Day,The_Month;
 var today;
 var Firstday;
 today = new Date();
 The_Year = today.getYear();
 The_Month = today.getMonth() + 1;
 The_Day = today.getDate();
 Firstday = GetWeekday(The_Year,The_Month);
 ShowCalender(The_Year,The_Month,The_Day,Firstday);
</script>
<div id=showdate></div>
</html>

js 日历控件 calendar js 日历控件 calendar,js 日历控件 calendar,js 日历控件 calendar,js 日历控件 calendar,js 日历控件 calendar,js 日历控件 calendar 立即下载

相关推荐

calendar.js:使用 javascript 生成日历数据:calendar:

日历.js 使用 javascript 生成日历数据 :calendar: 使用 yarn add calendar-data-generate 或者 npm install calendar-data-generate import Calendar from 'calendar-data-generate' let currentDate = { year : new Date ( ) . getFullYear ( ) , month : new Date ( ) . getMonth ( ) , date : new Date ( ) . getDate ( ) , firstDayOfWeek : 'monday' // 'sunday' or 'monday', } , let dateFormat = { day : '2-digit' , m

Web前端之js-calendar-converter日历插件的使用、日期、转换、阳历、阴历、公历、农历、calendar

Web前端之js-calendar-converter日历插件的使用、日期、转换、阳历、阴历、公历、农历、calendar

优快云博客主页地址:https://mengjian.blog.youkuaiyun.com/ 4297

手把手教你用若依WMS搭建企业级仓库管理系统(Vue+Spring Boot实战)

本文提供了一份基于若依框架(RuoYi)快速搭建企业级仓库管理系统(WMS)的实战指南。详细介绍了从环境准备、项目初始化到核心功能模块(如入库流程、库存管理看板)深度定制的全过程,并涵盖Lodop打印集成、移动端PWA适配及生产环境Docker部署等高级主题,帮助开发者高效构建稳定可用的WMS系统。

weixin_29015899的博客 562

JSCalendar 日历控件

目录(?)[+] JSCalendar 日历控件 1. K 可以自己换皮肤,有好几套,可以设置日期时间格式==,下面地址可以下载 1. 概述     日历控件我们使用dynarch的JSCalendar: http://www.dynarch.com/projects/calendar/     下载包中有完整的sample 和 文档。 1.1 S

709

EB TRESOS 29.0.0安装教程用于MCAL配置开发

本文介绍的搭建基于NXP官网提供EB软件,进行基于标准AUTOSAR软件底层驱动配置的开发

qq_53260940的博客 1876

STM32 SAI接口实战:用CubeMX快速配置多通道音频采集(附DMA优化技巧)

本文详细介绍了如何使用STM32的SAI接口通过CubeMX快速配置多通道音频采集系统,并提供了DMA双缓冲优化技巧。内容涵盖TDM模式配置、时钟同步、DMA优化及常见问题排查,帮助开发者高效实现高速数据采集应用。

weixin_42549037的博客 225

跟我做:Javascript 下的日历控件(Calendar)

    右侧是该控件的示范应用,朋友们可点击试用: 下载源码(20080824)     曾经,我发布过《几个Javascript类》,得到部分朋友的支持;有道是,授之予鱼,不如授之予渔。同时结合朋友们的评价,我对该日历控件做了兼容性检查,已经“基本”支持火狐浏览器应用了;遗留一个小问题,火狐下面“日”提取有问题,不知道有兴趣的朋友能不能在读完本文后自己动手修正该漏洞(提示:火狐不支...

weixin_34144848的博客 197

智能安防摄像头埋点实践:用户行为与设备状态的闭环监控(含AI事件)

智能安防摄像头埋点闭环体系设计及应用实践 摘要: 本文系统阐述了智能安防摄像头埋点闭环体系的设计与实践。首先分析了传统埋点的不足及闭环埋点的价值,提出由用户行为埋点、设备状态埋点和AI事件埋点构成的三维埋点体系框架。详细介绍了闭环监控的四大流程:数据采集、汇聚清洗、分析建模和智能决策。通过误报优化、个性化策略等案例展示了AI事件闭环的实际应用价值,并探讨了隐私合规、性能优化等关键挑战的解决思路。最后展望了端侧AI增强、预测型埋点等未来发展趋势。该体系实现了从数据采集到业务决策的完整闭环,有效提升了AI模型性

专注智能硬件软硬件产品经理成长与实战,分享从需求定义到量产落地的真实日记。涵盖IoT趋势洞察、研发协作经验、产品方法论与工具箱,用轻松有趣的“汪式”视角,陪伴产品经理成长、避坑与升级。 1046

终极指南:Calendar.js实现JavaScript农历公历转换的完整教程

还在为如何在现代web应用中集成传统农历功能而困扰吗?Calendar.js正是您需要的JavaScript农历公历互转解决方案!这个轻量级的库让复杂的历法计算变得前所未有的简单。 Calendar.js是一个专门处理中国农历与西元公历相互转换的JavaScript库,它完美融合了传统文化与现代技术,为开发者提供了强大而便捷的日期处理工具。 ## 为什么您的项目需要Calendar.js?

gitblog_00413的博客 1241

Windows环境下pcl点云库 安装配置全流程(精简、有效)

本文为Windows配置点云库pcl步骤,具体是win10、visual studio 2017、pcl1.11.1。

zaibeijixing的专栏 1万+

WKWebView 白屏问题,WKWebView request body丢失问题

1,WKWebView 白屏问题 WKWebView 自诩拥有更快的加载速度,更低的内存占用,但实际上 WKWebView 是一个多进程组件,Network Loading 以及 UI Rendering 在其它进程中执行。初次适配 WKWebView 的时候,我们也惊讶于打开 WKWebView 后,App 进程内存消耗反而大幅下降,但是仔细观察会发现,Other Process 的内存占用会...

weixin_37543822的博客 735

JavaScript实现的Python日历模块移植——calendar.js

JavaScript实现的Python日历模块移植——calendar.js 1. 项目基础介绍 calendar.js 是一个开源项目,它是 Python 标准库中 calendar.py 模块的 JavaScript 版本移植。该项目由开源社区成员维护,旨在提供一个在 JavaScript 环境下模拟 Python 日历模块功能的库。主要使用的编程语言是 JavaScript。 2. 项目核心...

gitblog_00138的博客 417

Zemax操作41--公差分析(一)

zemax公差

lzy750750的博客 5973

Calendar.js:终极JavaScript日历解决方案 - 简单实现农历公历互转

Calendar.js 是一款功能强大的 JavaScript 库,专注于实现中国农历(阴阳历)和公历之间的精准互转。无论是开发传统节日应用、出生日期查询工具,还是需要处理农历日期的网页项目,这款轻量级工具都能提供简单高效的解决方案。 ## 📦 快速安装指南 ### 通过 npm 一键安装 ```bash npm i js-calendar-converter ``` ### 直接引入使用

gitblog_00708的博客 862

基于传统算法的半导体晶圆缺陷检测原理及代码(二)

了解基于传统算法的半导体晶圆缺陷检测原理和方法,对于深入理解半导体制造工艺和质量控制具有重要意义。在半导体制造技术持续创新的浪潮中,基于传统算法的缺陷检测技术也将不断演进,为半导体产业的高质量发展提供坚实可靠的技术支撑,确保在芯片制造的每一个环节都能精准识别和管控缺陷,推动半导体产业迈向更高的发展水平。基于传统算法的半导体晶圆缺陷检测技术在半导体制造的长期发展历程中扮演了重要角色,凭借其成熟的技术体系、较快的检测速度和相对较低的成本,在各个工艺阶段为保障晶圆质量发挥了关键作用。

m0_44975814的博客 2219

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

calendar.js核心功能揭秘:10分钟掌握公历转农历的实现原理

在数字化时代,传统历法与现代生活的融合需求日益增长。calendar.js作为一款轻量级JavaScript库,专注于公历与中国农历的精准互转,让开发者能在10分钟内轻松集成传统历法功能到Web应用中。本文将深入解析其核心实现原理,帮助你快速掌握农历转换的技术奥秘。 ## 🌟 项目概述:小体积大功能的历法工具 calendar.js是一个专注于中国农历(阴阳历)与公历互转的JavaScrip

gitblog_00763的博客 746

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

JavaScript实现的Calendar

New Document .TrTitle{ background:#f5d6d6; height:20; border-bottom:5px solid #FBEDED; color:#000; cursor: hand; } .TrOver{ background:#f5d6d6; height:18; border:0px solid #999999

Joshua's SAP territory 914

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Calendar 实现(JS)

  <!-- // --> <!-- // --> <!-- // --> 鸿程办公系统 var months = new Array("一", "二", "三","四", "五", "六", "七", "八", "九","十", "十一

Maojm的专栏 2513

【亲测免费】 shadcn-ui-big-calendar:动态主题日历的Next.js实现

shadcn-ui-big-calendar:动态主题日历的Next.js实现 项目介绍 在现代Web应用中,日历组件是用户界面不可或缺的一部分,而主题的一致性和灵活性则直接关系到用户体验。shadcn-ui-big-calendar 是一个开源项目,它通过Next.js框架和React Big Calendar库,实现了基于Shadcn CSS变量的动态主题切换功能。该项目不仅为开发者提供了一个...

gitblog_00989的博客 955

终极指南:Calendar.js 实现中国农历与公历的快速互转

想要在 JavaScript 项目中轻松实现中国农历与公历的相互转换吗?Calendar.js 是一个功能强大的开源 JavaScript 库,专门用于处理中国农历(阴阳历)和西元阳历(公历)之间的转换。🎯 这个库支持从1900年到3000年的日期转换,让传统文化与现代技术完美结合! ## 🔥 为什么选择 Calendar.js? Calendar.js 不仅仅是简单的日期转换工具,它提供

gitblog_00116的博客 581

calendar日期控件的使用

/resources/js/common/calendar.css" rel="stylesheet" type="text/css" />    /resources/js/common/calendar.js">    /resources/js/common/calendar-setup.js">  /resources/js/common/calendar-zh.js">  /js

ykhappiness的专栏 948

javascript calendar万年历使用实例

jquery calendar是一个很酷的日历效果,在多个浏览器测试过,都比较正常。下面来介绍一下如何使用这个日历到具体的web页面中。 head设置,将日历运行的js脚本以及css样式表装载    @import url(css/jquery-cal

雨中漫步 917

js实现自动生成日期calendar.js

/**使用方法:  *  *   var CalendarWebControl = new atCalendarControl();  *  *  *  *  *     **/ function atCalendarControl(){   var calendar=this;   this.calendarPad=null;   this.prevMont

nc_wanjing的专栏 2312

calendar.js实战教程:如何在项目中优雅地实现生肖与节气查询

calendar.js是一款轻量级的JavaScript库,专注于中国农历(阴阳历)和公历的精确互转,同时提供丰富的生肖查询、节气计算等传统文化功能。本文将通过实用案例,教你如何快速集成calendar.js到项目中,轻松实现专业级的农历日期处理功能。 ## ✨ 为什么选择calendar.js? 作为开发者,处理日期往往是项目中的常见需求,而涉及农历、生肖、节气等传统文化元素时,普通日期库往

gitblog_00616的博客 467
上一篇: Struts 如何工作的
下一篇: *** 女人不该让男人太累 ***(一个女士写的,很感谢这位女士)
eric88
博客等级 码龄24年 19粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值