<span style="font-size:18px;"><!doctype html>  
<html>  
<head>  
<meta charset="utf-8">  
<title>layDate 调用实例</title>  
<script src="laydate/laydate.js"></script>  
<style>  
html{background-color:#E3E3E3; font-size:14px; color:#000; font-family:'微软雅黑'}  
h2{line-height:30px; font-size:20px;}  
a,a:hover{ text-decoration:none;}  
pre{font-family:'微软雅黑'}  
.box{width:970px; padding:10px 20px; background-color:#fff; margin:10px auto;}  
.box a{padding-right:20px;}  
</style>  
</head>  
<body>  
<div style="width:970px; margin:10px auto;">  
    演示一:<input placeholder="请输入日期" class="laydate-icon" onclick="laydate()">  
</div>  
<div class="box">  
<pre>  
<strong>【注意事项】</strong>  
一、请千万勿移动laydate中的目录结构,它们具有完整的依赖体系。使用时,只需引入laydate/laydate.js即可。  
二、如果您的网站的js采用合并或模块加载,您需要打开laydate.js,修改path。  
三、laydate遵循LGPL开源协议,永不收费!  
四、版权最终解释权:贤心。  
</pre>  
演示二:<input class="laydate-icon" id="demo" value="2014-6-25更新">  
  
</br>  
演示三:  
<input class="laydate-icon" onclick="laydate()"></br>  
这是是一个最简单的调用方式,它会把自身作为目标元素。除此之外,您还可以按照需求传入一些其它key,比如:</br>  
演示四:  
<input class="laydate-icon" onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"></br>  
  
那么对于输入框,如果用户乱填怎么办?没关系,laydate会智能纠错,你可以尝试在上述表单输入任意值,然后点击页面其它处测试一下。</br>  
当然,您其实还可以设定任何html元素作为目标对象,又比如:<div onclick="laydate()"></div></br>  
          
注意事项</br>  
解压后,将laydate整个文件放至您项目的任意目录,不要移动其文件结构,它们具有完整的依赖体系。</br>  
使用只需在页面引入laydate.js即可。</br>  
如果您的网站的js采用合并或模块加载,您需要打开laydate.js,修改path。</br>  
用于实际项目时请保留来源,勿剔除laydate.js头部注释。</br>  
</br>  
  
选择理由</br>  
layDate除了包含日期范围限制、开始日期设定、自定义日期格式、时间戳转换、当天的前后若干天返回、</br>时分秒选择、智能响应、自动纠错、节日识别,快捷键操作等常规功能外,还拥有更多趋近完美的解决方案。  
</br>  
科学的接口设计1</br>  
她并不提倡API的数量性,而是尽可能呈现最人性合理的接口,减少使用成本。</br>  
一流的代码驱动2</br>  
layDate完全用原生JavaScript实现,代码采用自由灵活风格,内部封装了众多轻量级的方法引擎,保证了良好的速度体验和接近于零的代码冗余.</br>  
人性的皮肤体系3</br>  
她非常注重外观设计,因此她提供了非常强大的皮肤选择支持,不仅官方会提供海量的皮肤下载,</br>您还可以很方便地按照喜好去自定义皮肤,我们非常欢迎您能够贡献皮肤包,具体操作事宜请查看皮肤库页面。</br>  
</br>  
功能演示</br>  
外部js调用:</br>  
【外部js调用】</br>  
<input id="hello" class="laydate-icon">  
<script>  
laydate({  
    elem: '#hello', //目标元素。由于laydate.js封装了一个轻量级的选择器引擎,因此elem还允许你传入class、tag但必须按照这种方式 '#id .class'  
    event: 'focus' //响应事件。如果没有传入event,则按照默认的click  
});  
</script>  
</br>  
图标触发日期:</br>  
  
【图标触发日期】</br>  
<input id="hello1">  
<span class="laydate-icon" onclick="laydate({elem: '#hello1'});"></span>  
</br>  
自定义日期格式:</br>  
【自定义日期格式】</br>  
<div id="test1" class="laydate-icon"></div>  
<script>  
laydate({  
    elem: '#test1',  
    format: 'YYYY/MM', // 分隔符可以任意定义,该例子表示只显示年月  
    festival: true, //显示节日  
    choose: function(datas){ //选择日期完毕的回调  
        alert('得到:'+datas);  
    }  
});  
</script></br>  
日期范围限定在昨天到明天:</br>  
【日期范围限定在昨天到明天】</br>  
<div id="hello3" class="laydate-icon"></div>  
<script>  
laydate({  
    elem: '#hello3',  
    min: laydate.now(-1), //-1代表昨天,-2代表前天,以此类推  
    max: laydate.now(+1) //+1代表明天,+2代表后天,以此类推  
});  
</script>  
 </br>         
日期范围限制: 开始日: 结束日:</br>  
  
开始日:<li class="laydate-icon" id="start" style="width:200px; margin-right:10px;"></li></br>  
结束日:<li class="laydate-icon" id="end" style="width:200px;"></li>  
<script>  
var start = {  
    elem: '#start',  
    format: 'YYYY/MM/DD hh:mm:ss',  
    min: laydate.now(), //设定最小日期为当前日期  
    max: '2099-06-16 23:59:59', //最大日期  
    istime: true,  
    istoday: false,  
    choose: function(datas){  
         end.min = datas; //开始日选好后,重置结束日的最小日期  
         end.start = datas //将结束日的初始值设定为开始日  
    }  
};  
var end = {  
    elem: '#end',  
    format: 'YYYY/MM/DD hh:mm:ss',  
    min: laydate.now(),  
    max: '2099-06-16 23:59:59',  
    istime: true,  
    istoday: false,  
    choose: function(datas){  
        start.max = datas; //结束日选好后,重置开始日的最大日期  
    }  
};  
laydate(start);  
laydate(end);  
</script>  
</div>  
</div>  
<script>  
;!function(){  
  
//laydate.skin('molv');  
  
laydate({  
   elem: '#demo'  
})  
  
}();  
</script>  
    <b>API文档临时版,后面会陆续整理详细资料:</b><br/>  
    一、核心方法:laydate(options);<br/>  
    options是一个对象,它包含了以下key: '默认值'<br/>  
        elem: '#id', //需显示日期的元素选择器<br/>  
        event: 'click', //触发事件<br/>  
        format: 'YYYY-MM-DD hh:mm:ss', //日期格式<br/>  
        istime: false, //是否开启时间选择<br/>  
        isclear: true, //是否显示清空<br/>  
        istoday: true, //是否显示今天<br/>  
        issure: true, 是否显示确认<br/>  
        festival: true //是否显示节日<br/><br/>  
        min: '1900-01-01 00:00:00', //最小日期<br/>  
        max: '2099-12-31 23:59:59', //最大日期<br/>  
        start: '2014-6-15 23:00:00',    //开始日期<br/>  
        fixed: false, //是否固定在可视区域<br/>  
        zIndex: 99999999, //css z-index<br/>  
        choose: function(dates){ //选择好日期的回调<br/>  
  
        }<br/>  
      
    二、其它方法/属性<br/>  
  
    laydate.v   //获取laydate版本号<br/>  
    laydate.skin(lib);  //加载皮肤,参数lib为皮肤名 <br/>  
      
    /*<br/>  
        layer.now支持多类型参数。timestamp可以是前后若干天,也可以是一个时间戳。format为日期格式,为空时则采用默认的“-”分割。<br/>  
        如laydate.now(-2)将返回前天,laydate.now(3999634079890)将返回2096-09-28<br/>  
    */<br/>  
    layer.now(timestamp, format);   //该方法提供了丰富的功能,推荐灵活使用。<br/>  
      
    laydate.reset();    //重设日历控件坐标,一般用于页面dom结构改变时。无参<br/>  
      
    皮肤使用说明<br/>  
    下载皮肤包解压后,把整个文件夹存放在laydate/skins目录下,不要改动文件名。<br/>  
    比如您下载了雅兰(yalan),那么您只需要在您的js初始的时候执行:<br/>  
    laydate.skin('yalan')即可使用皮肤[雅兰]了。<br/>  
</body>  
</html></span>  

laydate 代码下载网址:https://github.com/1290800466/mac_win/tree/master/laydate

posted on 2018-03-21 16:34  刘世涛6192  阅读(777)  评论(0编辑  收藏  举报