当前位置:   article > 正文

JS特效第154弹:js-实现简单实用响应式日历日程记事本_js 记事本

js 记事本

          一款简单易用的日历每日事项记录,简单的电子日历记事本代码,支持撤销、添加、修改文字记录效果代码,先来看看效果:

        一部分关键的代码如下:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  6. <title>简单实用响应式日历日程记事本js插件</title>
  7. <meta name="keywords" content="简单实用,响应式,日历日程,记事本,js插件" />
  8. <meta name="description" content="简单实用响应式日历日程记事本js插件代码下载。" />
  9. <meta name="author" content="js代码(www.jsdaima.com)" />
  10. <meta name="copyright" content="js代码(www.jsdaima.com)" />
  11. <link rel="stylesheet" href="layui/css/layui.css">
  12. <link rel="stylesheet" href="css/date.css">
  13. </head>
  14. <body>
  15. <!-- 你的HTML代码 -->
  16. <div class="layui-container" style="padding: 15px;">
  17. <div class="layui-row">
  18. <div class="layui-col-md12">
  19. <blockquote class="layui-elem-quote">简单实用日历记事本</blockquote>
  20. <div class="layui-inline" id="test-n2" ></div>
  21. </div>
  22. </div>
  23. </div>
  24. <script src="layui/layui.js"></script>
  25. <script>
  26. layui.use(['layer', 'form','jquery','laydate'], function() {
  27. var layer = layui.layer,
  28. $ = layui.jquery,
  29. laydate = layui.laydate,
  30. form = layui.form;
  31. //定义json
  32. var data={};
  33. var new_date = new Date();
  34. loding_date(new_date ,data);
  35. //日历插件调用方法
  36. function loding_date(date_value,data){
  37. laydate.render({
  38. elem: '#test-n2'
  39. ,type: 'date'
  40. ,theme: 'grid'
  41. ,max: '2099-06-16 23:59:59'
  42. ,position: 'static'
  43. ,range: false
  44. ,value:date_value
  45. ,calendar: true
  46. ,btns:false
  47. ,done: function(value, date, endDate){
  48. console.log(value); //得到日期生成的值,如:2017-08-18
  49. console.log(date); //得到日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}
  50. console.log(endDate); //得结束的日期时间对象,开启范围选择(range: true)才会返回。对象成员同上。
  51. //layer.msg(value)
  52. //调用弹出层方法
  53. date_chose(value,data);
  54. }
  55. , mark:data//重要json!
  56. });
  57. }
  58. //获取隐藏的弹出层内容
  59. var date_choebox = $('.date_box').html();
  60. //定义弹出层方法
  61. function date_chose(obj_date,data){
  62. var index = layer.open({
  63. type: 1,
  64. skin: 'layui-layer-rim', //加上边框
  65. title:'添加记录',
  66. area: ['400px', 'auto'], //宽高
  67. btn:['确定','撤销','取消'],
  68. content: '<div class="text_box">'+
  69. '<form class="layui-form" action="">'+
  70. '<div class="layui-form-item layui-form-text">'+
  71. ' <textarea id="text_book" placeholder="请输入内容" class="layui-textarea"></textarea>'+
  72. '</div>'+
  73. '</form>'+
  74. '</div>'
  75. ,success:function(){
  76. $('#text_book').val(data[obj_date])
  77. }
  78. ,yes:function (){
  79. //调用添加/编辑标注方法
  80. if($('#text_book').val()!=''){
  81. chose_moban(obj_date,data);
  82. layer.close(index);
  83. }else{
  84. layer.msg('不能为空', {icon: 2});
  85. }
  86. },btn2:function (){
  87. chexiao(obj_date,data);
  88. }
  89. });
  90. }
  91. //定义添加/编辑标注方法
  92. function chose_moban(obj_date,markJson){
  93. //获取弹出层val
  94. var chose_moban_val = $('#text_book').val();
  95. $('#test-n2').html('');//重要!由于插件是嵌套指定容器,再次调用前需要清空原日历控件
  96. //添加属性
  97. markJson[obj_date] = chose_moban_val;
  98. console.log(JSON.stringify(markJson));
  99. //再次调用日历控件,
  100. loding_date(obj_date,markJson);//重要!,再标注一个日期后会刷新当前日期变为初始值,所以必须调用当前选定日期。
  101. }
  102. //撤销选择
  103. function chexiao(obj_date,markJson){
  104. //删除指定日期标注
  105. delete markJson[obj_date];
  106. console.log(JSON.stringify(markJson));
  107. //原理同添加一致
  108. $('#test-n2').html('');
  109. loding_date(obj_date,markJson);
  110. }
  111. });</script>
  112. </body>
  113. </html>

        全部代码:js-实现简单实用响应式日历日程记事本

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/870967
推荐阅读
相关标签
  

闽ICP备14008679号