laydate是一款很好用的日历控件,兼容了包括IE6在内的所有主流浏览器,默认有三种皮肤,如需其它皮肤可去官网下载http://www.layui.com/laydate/

一、核心方法:laydate(options); options是一个对象,它包含了以下key: '默认值' elem: '#id', // 日期显示元素选择器,laydate.js封装了一个轻量级的选择器引擎,因此elem还允许你传入class、tag但必须按照这种方式 '#id .class' event: 'click', // 触发事件。如果没有传入event,则按照默认的click format: 'YYYY-MM-DD hh:mm:ss', // 日期格式 istime: false, // 是否开启时间选择 isclear: true, // 是否显示清空 istoday: true, // 是否显示今天 issure: true, // 是否显示确认 festival: true, // 是否显示节日 min: '1900-01-01 00:00:00', // 最小日期 max: '2099-12-31 23:59:59', // 最大日期 start: '2014-6-15 23:00:00', // 开始日期 fixed: false, // 是否固定在可视区域 zIndex: 99999999, // css z-index choose: function(dates){ // 选择好日期的回调 } 二、其它方法/属性 laydate.v // 获取laydate版本号 laydate.skin(lib); // 加载皮肤,参数lib为皮肤名 /* layer.now支持多类型参数。timestamp可以是前后若干天,也可以是一个时间戳。format为日期格式,为空时则采用默认的“-”分割。 如laydate.now(-2)将返回前天,laydate.now(3999634079890)将返回2096-09-28 */ layer.now(timestamp, format); // 该方法提供了丰富的功能,推荐灵活使用。 laydate.reset(); // 重设日历控件坐标,一般用于页面dom结构改变时。无参 三、注意问题
(1)在引用了bootstrap时,laydate控件样式会出现如下图的bug
原因是bootstrap.css中重新定义了盒模型,解决办法是再次覆盖盒模型的定义,如下
.laydate_box, .laydate_box * {
box-sizing:content-box;
}
(2)当页面出现滚动条,滚动页面日历位置不再定位在输入框后
解决办法,当滚动页面时触发laydate.reset()事件