js日历图片(js实现简单日历效果)
类别:编程学习 浏览量:1812
时间:2022-03-31 00:58:47 js日历图片
js实现简单日历效果本文实例为大家分享了js实现简单日历效果的具体代码,供大家参考,具体内容如下
## css模块 <style type="text/css"> *{ margin: 0; padding: 0; } .date{ width: 300px; height: 220px; border: 1px solid #000; margin: 100px auto; } .title{ width: 200px; display: flex; font-size: 12px; margin: auto; text-align: center; justify-content: space-around; align-items: center; } .year{ margin: 0 40px; display: flex; flex-direction: column; } #week{ border-top: 1px solid #000; border-bottom: 1px solid #000; margin: auto; list-style-type: none; display: flex; } #week li{ display: inline-block; text-align: center; flex:1; } #ul{ list-style-type: none; margin-top: 5px; } #ul li { display: inline-block; width: 40px; height: 21px; text-align: center; border: 1px solid #fff; } .current{ color:red; } #ul li:hover{ border: 1px solid red; } #prev,#next{ cursor: pointer; } </style> ## html <li class="date"> <li class="title"> <span id="prev"><上一月</span> <li class="year"> <span id="year">2021</span> <span id="month">5月</span> </li> <span id="next">下一月></span> </li> <!-- 用ul做日历 --> <ul id="week"> <li>日</li> <li>一</li> <li>二</li> <li>三</li> <li>四</li> <li>五</li> <li>六</li> </ul> <ul id="ul"> </ul> </li>
## js代码 <script type="text/javascript"> // date对象,方便切换月份,所以设置为全局对向 let date = new Date(); // 点击切换月份的事件 document.getElementById('prev').addEventListener('click',function(){ date.setMonth(date.getMonth()-1); add(); }) document.getElementById('next').addEventListener('click',function(){ date.setMonth(date.getMonth()+1); add(); }) add(); //制作日历的函数 function add(){ // 当前年 let cYear = date.getFullYear(); // 当前月 let cMonth = date.getMonth()+1; // 获取到当前日期 let cDay = date.getDate(); // 写入年月 document.getElementById('year').innerHTML = cYear; document.getElementById('month').innerHTML = cMonth+'月'; let days = new Date(cYear,cMonth,-1); // 当前月份的天数 let n = days.getDate()+1; // 每个月的第一天是星期几 let week = new Date(cYear,cMonth-1,1).getDay(); let html = ''; // 写入dom for(let i=0;i<week;i++){ html+=`<li></li>` } for(let i=1;i<=n;i++){ if(i==cDay){ html+=`<li class="current">${i}</li>` }else{ html+=`<li>${i}</li>` } } // 一次性插入 document.getElementById('ul').innerHTML = html } </script>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持开心学习网。
您可能感兴趣
- js实现自动轮播(原生js封装无缝轮播功能)
- nodejs的广播机制(node.js如何自定义实现一个EventEmitter)
- html markdown 超链接对比(html+js 实现markdown编辑器效果)
- jscanvas背景色(JavaScript canvas实现代码雨效果)
- extjs中Toolbar工具栏
- js setTimeout
- 动画用css3还是js(前端制作动画的几种方式css3,js)
- python将对象转换成json(python对象与json相互转换的方法)
- 常用JS验证函数
- js统计文本框剩余可输入字数
- vuejs组件使用教程交流(Vue vee-validate插件的简单使用)
- videojs播放流媒体(video.js支持m3u8格式直播的实现示例)
- js中alert加参数写法(详解JavaScript Alert函数执行顺序问题)
- js防抖用法(JavaScript的防抖和节流案例)
- js return false的作用
- python class转json(Python对象转换为json的方法步骤)
- 兄弟萌,今年的七夕又取消了 思考 思考(今年的七夕又取消了)
- 七夕取消是什么梗(七夕取消是什么梗)
- 这竟然是捏出来的 20种橡皮泥玩法让你轻松hold住魔娃(这竟然是捏出来的)
- 自制橡皮泥(自制橡皮泥)
- 还在卖 禁药西布曲明网上论斤卖(还在卖禁药西布曲明网上论斤卖)
- 微商在朋友圈热卖的 DL减肥咖啡 含违禁药物,你还敢买吗(微商在朋友圈热卖的)
热门推荐
- python线程池怎么设置(python自定义线程池控制线程数量的示例)
- css3做出效果(深入解读CSS3中transform变换模型的渲染)
- centos7系统密码忘了怎么办(CentOS 7忘记密码解决方案过程图解)
- 安装phpstudy注意哪些问题(phpstudy怎么卸载?phpstudy卸载图文教程)
- ExecuteNonQuery、ExecuteScalar、ExecuteReader区别
- php实例说明(PHP中Static静态关键字功能与用法实例分析)
- ui界面的测试用例(AmazeUI中模态框的实现)
- python中统计文本中单词数的代码(Linux上使用Python统计每天的键盘输入次数)
- docker查找redis配置文件(解决docker重启redis,mysql数据丢失的问题)
- C# Windows服务的创建、安装、调试