经常会用到日历控件,现在就整理一下,好看即好用的日历控件
第一种方案
1.建立一个JS文件:Calendar.js
<!--
var cal;
var isFocus=false; //是否为焦点
//function SelectDate(obj,strFormat) //两个参数改为只传一个
function SelectDate(obj)
...{
var date = new Date();
var by = date.getFullYear()-10; //最小值 → 10 年前
var ey = date.getFullYear()+10; //最大值 → 10 年后
cal = (cal==null) ? new Calendar(by, ey, 0) : cal; //初始化为中文版,1为英文版
//cal.dateFormatStyle = strFormat; // 默认显示格式为:yyyy-MM-dd ,还可显示 yyyy/MM/dd
cal.show(obj);
}
/**//* 返回日期 */
String.prototype.toDate = function(style)...{
var y = this.substring(style.indexOf('y'),style.lastIndexOf('y')+1);//年
var m = this.substring(style.indexOf('M'),style.lastIndexOf('M')+1);//月
var d = this.substring(style.indexOf('d'),style.lastIndexOf('d')+1);//日
if(isNaN(y)) y = new Date().getFullYear();
if(isNaN(m)) m = new Date().getMonth();
if(isNaN(d)) d = new Date().getDate();
var dt ;
eval ("dt = new Date('"+ y+"', '"+(m-1)+"','"+ d +"')");
return dt;
}
/**//* 格式化日期 */
Date.prototype.format = function(style)...{
var o = ...{
"M+" : this.getMonth() + 1, //month
"d+" : this.getDate(), //day
"h+" : this.getHours(), //hour
"m+" : this.getMinutes(), //minute
"s+" : this.getSeconds(), //second
"w+" : "天一二三四五六".charAt(this.getDay()), //week
"q+" : Math.floor((this.getMonth() + 3) / 3), //quarter
"S" : this.getMilliseconds() //millisecond
}
if(/(y+)/.test(style))...{
style = style.replace(RegExp.$1,
(this.getFullYear() + "").substr(4 - RegExp.$1.length));
}
for(var k in o)...{
if(new RegExp("("+ k +")").test(style))...{
style = style.replace(RegExp.$1,
RegExp.$1.length == 1 ? o[k] :
("00" + o[k]).substr(("" + o[k]).length));
}
}
return style;
};
/**//*
* 日历类
* @param beginYear 1990
* @param endYear 2010
* @param lang 0(中文)|1(英语) 可自由扩充
* @param dateFormatStyle "yyyy-MM-dd";
*/
function Calendar(beginYear, endYear, lang, dateFormatStyle)...{
this.beginYear = 1990;
this.endYear = 2010;
this.lang = 0; //0(中文) | 1(英文)
this.dateFormatStyle = "yyyy-MM-dd";
if (beginYear != null && endYear != null)...{
this.beginYear = beginYear;
this.endYear = endYear;
}
if (lang != null)...{
this.lang = lang
}
if (dateFormatStyle != null)...{
this.dateFormatStyle = dateFormatStyle
}
this.dateControl = null;
this.panel = this.getElementById("calendarPanel");
this.container = this.getElementById("ContainerPanel");
this.form = null;
this.date = new Date();
this.year = this.date.getFullYear();
this.month = this.date.getMonth();
this.colors = ...{
"cur_word" : "#FFFFFF", //当日日期文字颜色
"cur_bg" : "#83A6F4", //当日日期单元格背影色
"sel_bg" : "#FFCCCC", //已被选择的日期单元格背影色
"sun_word" : "#FF0000", //星期天文字颜色
"sat_word" : "#0000FF", //星期六文字颜色
"td_word_light" : "#333333", //单元格文字颜色
"td_word_dark" : "#CCCCCC", //单元格文字暗色
"td_bg_out" : "#EFEFEF", //单元格背影色
"td_bg_over" : "#FFCC00", //单元格背影色
"tr_word" : "#FFFFFF", //日历头文字颜色
"tr_bg" : "#666666", //日历头背影色
"input_border<sp>
分享到:
相关推荐
JavaScript(JS)日历控件是网页开发中常用的一种组件,用于展示日期选择功能,通常在表单中作为输入辅助工具出现。它们可以提供用户友好的界面,方便用户选择日期,而无需手动输入。以下是对JS日历控件的一些详细...
7. **兼容性**:考虑到浏览器的多样性,编写JavaScript日历控件时需要关注跨浏览器的兼容性问题,确保在不同的浏览器(如Chrome、Firefox、Safari、Edge和IE)上都能正常工作。 在提供的文件名中,"calendar.html"...
压缩包中的"js日历控件大全"可能包含了多个不同特性和样式的日历插件,开发者可以根据项目需求选择合适的一个。每个控件可能都有自己的配置选项和示例代码,需要阅读相关文档或源码进行了解和使用。 总的来说,js...
JavaScript日历控件是网页开发中的重要组成部分,尤其在...这个“js日历控件大全”资源包是开发者学习和实践JavaScript日历控件的宝贵素材,通过研究和实践,你可以掌握不同日历控件的实现原理,提升网页交互设计能力。
总的来说,“日历控件大全”这个主题涵盖了从基础的日历控件概念到具体实现的方方面面,无论你是初学者还是经验丰富的开发者,都能从中找到有价值的信息。通过深入学习和实践,你可以为你的应用增添功能强大且美观的...
在本压缩包“js日历控件大全”中,你将找到一系列可用于网页的JS日历组件源码,这些控件设计精良,功能多样,易于集成到你的项目中。 首先,JavaScript日历控件的基础原理是利用DOM操作和事件监听来动态创建和展示...
总之,JavaScript日历控件是一个结合了前端技术与用户体验设计的组件,通过JavaScript的动态特性,我们可以创建功能丰富、用户友好的日期选择工具。在实际项目中,还可以考虑与其他库(如jQuery、React或Vue)集成,...
这里我们将深入探讨如何优化JavaScript日历控件,特别是那些包含时分秒选择,以及支持年月日显示的组件。 1. **性能优化**:在创建日历控件时,减少DOM操作是关键。利用虚拟DOM或仅在必要时更新DOM可以显著提升性能...
JavaScript(简称JS)日历控件是Web开发中常用的一种组件,主要用于在网页上展示日期选择功能,常见于表单填写、事件安排等场景。在Web应用中,JS日历控件可以提供用户友好的界面,提高用户体验。下面将详细介绍JS...
在本压缩包“js日历控件大全”中,包含了6款不同的JavaScript日历控件,每款都有对应的效果图,使得开发者可以更直观地了解其功能和样式。 1. **基本概念** - JavaScript:一种轻量级的解释型编程语言,常用于网页...
总的来说,JavaScript日历控件是网页交互中不可或缺的一部分,它的实现涉及前端多个技术层面,从基础的HTML/CSS/JS到复杂的库使用和性能优化。理解其工作原理并灵活运用,能帮助开发者创建出更高效、更易用的网页...
总的来说,"史上最强js日历控件"可能是一个集成了各种高级特性和自定义选项的JavaScript日历组件,它可以帮助开发者快速地在网页应用中实现强大的日期选择功能。通过深入研究和理解提供的压缩包内容,开发者可以有效...
js 日历控件 calendar,js 日历控件 calendar,js 日历控件 calendar,js 日历控件 calendar,js 日历控件 calendar,js 日历控件 calendar
在本资源包“js日历控件大全”中,包含的源代码可以帮助开发者了解和实现各种不同类型的日历控件。下面我们将深入探讨JavaScript日历控件的基本原理、常见类型、设计模式以及如何利用这些源代码进行自定义开发。 ...
在这个“js日历控件大全”中,我们可能会找到多种不同实现方式和功能的JS日历组件。 1. **基本原理**:JS日历控件通常基于HTML、CSS和JavaScript构建,通过DOM操作动态生成日历元素并将其插入到页面中。利用...
JavaScript日历控件是网页开发中常用的一种交互元素,它为用户提供了一种直观的方式来选择日期。在本资源包中,包含了几种不同的JavaScript日历控件实现,供开发者根据项目需求选择和使用。下面我们将详细探讨...
本文将深入探讨“js日历控件大全”,重点介绍如何支持自定义格式,以及如何设置“年月日”、“年月”和“年月日时”的输入格式。 首先,`Calendar.js`是一个JavaScript库,它提供了创建和管理日历控件的功能。这个...
这个“js日历控件大全(十几种).rar”压缩包很可能包含了多种不同开发者编写的JS日历插件或库,每一种都有其特点和适用范围。 1. **基本概念**:JS日历控件通常由HTML、CSS和JavaScript三部分组成,通过JavaScript...
JavaScript日历控件是网页开发中常用的一种交互元素,它能帮助用户方便地选择日期,常见于表单输入、事件安排或时间相关的功能。在给定的资源中,包含了六种不同样式的JavaScript日历,这些日历可能具有不同的设计...
JavaScript日历控件是网页应用中常见的一种交互元素,它允许用户方便地选择日期,常用于事件安排、预订系统或表单输入等场景。在这个英文版的JS日历控件中,开发者为英文操作系统的用户提供了友好的界面和功能。 ...