原生JS实现左右箭头选择日期实例代码


Posted in Javascript onMarch 14, 2017

先上个效果图,就是用左右尖括号可改变中间日期的值。(点击中间显示区域有时间选择器弹框,用的插件就不说了,主要说自己原创的部分)                      

原生JS实现左右箭头选择日期实例代码                                                  

HTML部分 (左右箭头都是用的图片素材,网上一大把,这里我就显示我本地地址了)

<div> 
   <span class="leftspan" <span style="color:#FF0000;">onclick="reducedate()"</span>><img src="IMG/return.png" style="height:100%; width:100%;"/></span> 
   <label id="beginTime" class="kbtn"></label> 
   <span class="rightspan" <span style="color:#FF0000;">onclick="adddate()"</span>><img src="IMG/right.png" style="height:100%; width:100%;"</span> 
</div>

HTML部分没什么可说的

下面原生JS部分了(底部有本插件附件,欢迎各路朋友评论交流)

function adddate(){
 //向右跳转时间(加时间)的按钮
 var s = document.getElementById("beginTime").innerHTML;
 var arr = s.split("/"); //将获取的数组按“/”拆分成字符串数组
 var year = parseInt(arr[0]);//开分字符串数组的第一个地址的内容是年份
 var mouth = parseInt(arr[1]);//开分字符串数组的第二个地址的内容是月份
 var date = parseInt( arr[arr.length-1]);//开分字符串数组的第三个地址的内容是日期
 if(date == 28){//当日期为28号时 只判断是否是2月
 switch(mouth)
 {
  case 2:
  if(year % 4 == 0 && year % 100 !=0 || year%400 ==0){
  date = date +1;
  } //如果是闰年2月 日期就加一
  else {
  date = 1;
   mouth = mouth +1;
  } //不是闰年2月 日期就变为1 月份加一
 }
 }else if(date == 29){ //当日期为29号是 也是判断是否是2月
 switch(mouth)
 {
  case 2:
  date = 1;
  mouth = mouth +1;
 } //当29号出现必定是闰年 日期变为1 月份加一
 }else if(date == 30){ //当日期为30 时
 switch(mouth)
  {
  case 1:
  case 3:
  case 5:
  case 7:
  case 8:
  case 10:
  case 12: 
  date = date +1;
  break; //这些月份的时候一个月有31天 到30的时候再加一
  case 4:
  case 6:
  case 9:
  case 11: 
  date = 1;
  mouth = mouth +1;
  break; //这些月份的时候一个月有30天 到30的时候 日期变为1 月份加一
  }
 }else if(date == 31){
 switch(mouth)
  {
  case 1:
  case 3:
  case 5:
  case 7:
  case 8:
  case 10:
  date = 1;
  mouth = mouth+1;
  break; //这些月份的时候一个月有31天 到31的时候 日期为1月份加一
  case 12: 
  date = 1;
  mouth = 1;
  year = year+1;;
  break; //十二月 的 31 号 日期变为一 月份变为一 年份加一
  }
 }else{
  date +=1;
  }
 document.getElementById("beginTime").innerHTML = year+"/"+mouth+"/"+date;
 }
function reducedate(){
 //向左跳转时间(减时间)的按钮
 var s = document.getElementById("beginTime").innerHTML;
 var arr = s.split("/"); //将获取的数组按“/”拆分成字符串数组
 var year = parseInt(arr[0]);//开分字符串数组的第一个地址的内容是年份
 var mouth = parseInt(arr[1]);//开分字符串数组的第二个地址的内容是月份
 var date = parseInt( arr[arr.length-1]);//开分字符串数组的第三个地址的内容是日期
 if(date == 1){//当日期为1时,再剪就会改变月份,甚至年份
 switch(mouth){
 case 1:
  date = 31;
  mouth = 12;
  year = year-1;
  break; //一月一日 再剪一天 年份减一 月份为12 日期为31
  case 2:
 case 4:
 case 6:
 case 8:
 case 9:
 case 11:
  date = 31;
  mouth = mouth-1;
  break; //这些月一日 再剪一天 月份减一 日期为31
 case 3:
   if(year % 4 == 0 && year % 100 !=0 || year%400 ==0){
  date = 29;
  mouth = mouth -1;
  }else {
  date = 28;
  mouth = mouth -1;
  }
   break; //三月一日 再剪一天 月份减一 日期为根据是否是闰年来判断 日期
 case 5:
 case 7:
 case 10:
  date = 30;
  mouth = mouth -1;
  break; //这些月一日 再剪一天 月份减一 日期为30
 }
 }else{
 date = date-1;
 }
 document.getElementById("beginTime").innerHTML = year+"/"+mouth+"/"+date; //拼接字符串插入到标签中
 }

写个使用API吧:

向左尖括号(减少时间)

<span style="color:#FF0000;">onclick="reducedate("tagid")"; 
/span>

向右尖括号(增加时间)

<span style="color:#FF0000;">onclick="adddate()("tagid")"; 
/span>

代码可复制到自己的JS中,也可插入。

以上所述是小编给大家介绍的原生JS 左右箭头选择日期实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript 自定义事件初探
Aug 21 Javascript
onmouseover和onmouseout的一些问题思考
Aug 14 Javascript
js 浏览本地文件夹系统示例代码
Oct 24 Javascript
jquery上传插件fineuploader上传文件使用方法(jquery图片上传插件)
Dec 05 Javascript
javascript异步编程的4种方法
Feb 19 Javascript
JavaScript实现更改网页背景与字体颜色的方法
Feb 02 Javascript
jQuery实现元素拖拽并cookie保存顺序的方法
Feb 20 Javascript
js实现String.Fomat的实例代码
Sep 02 Javascript
预防网页挂马的方法总结
Nov 03 Javascript
js数组方法reduce经典用法代码分享
Jan 07 Javascript
详解VUE2.X过滤器的使用方法
Jan 11 Javascript
JS判断字符串是否为整数的方法--简单的正则判断
Jul 23 Javascript
JavaScript校验Number(4,1)格式的数字实例代码
Mar 13 #Javascript
Bootstrap笔记—折叠实例代码
Mar 13 #Javascript
jquery插件ContextMenu设置右键菜单
Mar 13 #Javascript
jQuery实现表格奇偶行显示不同背景色 就这么简单
Mar 13 #Javascript
轻松实现jQuery添加删除按钮Click事件
Mar 13 #Javascript
jQuery+CSS3实现点赞功能
Mar 13 #Javascript
百度地图JavascriptApi Marker平滑移动及车头指向行径方向
Mar 13 #Javascript
You might like
实用函数5
2007/11/08 PHP
PHP函数microtime()用法与说明
2013/12/04 PHP
php中$美元符号与Zen Coding冲突问题解决方法分享
2014/05/28 PHP
php实现通用的从数据库表读取数据到数组的函数实例
2015/03/21 PHP
py文件转exe时包含paramiko模块出错解决方法
2016/08/12 PHP
游戏人文件夹程序 ver 3.0
2006/07/14 Javascript
javascript encodeURI和encodeURIComponent的比较
2010/04/03 Javascript
javascript中expression的用法整理
2014/05/13 Javascript
javascript 闭包详解
2015/02/15 Javascript
JavaScript根据CSS的Media Queries来判断浏览设备的方法
2016/05/10 Javascript
ES6新特性之Symbol类型用法分析
2017/03/31 Javascript
jquery处理checkbox(复选框)是否被选中实例代码
2017/06/12 jQuery
微信小程序 Animation实现图片旋转动画示例
2018/08/22 Javascript
详解JS中统计函数执行次数与执行时间
2018/09/04 Javascript
浅谈vue 锚点指令v-anchor的使用
2019/11/13 Javascript
JQuery实现折叠式菜单的详细代码
2020/06/03 jQuery
微信小程序12行js代码自己写个滑块功能(推荐)
2020/07/15 Javascript
vue使用screenfull插件实现全屏功能
2020/09/17 Javascript
[32:30]夜魇凡尔赛茶话会 第一期01:谁是卧底
2021/03/11 DOTA
Python实现获取操作系统版本信息方法
2015/04/08 Python
Python爬虫:通过关键字爬取百度图片
2017/02/17 Python
python实现逆序输出一个数字的示例讲解
2018/06/25 Python
对python中dict和json的区别详解
2018/12/18 Python
django认证系统实现自定义权限管理的方法
2019/08/28 Python
用Python开发app后端有优势吗
2020/06/29 Python
django models里数据表插入数据id自增操作
2020/07/15 Python
python中yield的用法详解
2021/01/13 Python
Tom Dixon官网:英国照明及家具设计和制造公司
2019/03/01 全球购物
工作自我评价分享
2013/12/01 职场文书
高中校园广播稿
2014/01/11 职场文书
教室布置标语
2014/06/26 职场文书
《爬天都峰》教学反思
2016/02/23 职场文书
2016年庆“七一”主题党日活动总结
2016/04/05 职场文书
python flask开发的简单基金查询工具
2021/06/02 Python
python之基数排序的实现
2021/07/26 Python
python​格式化字符串
2022/04/20 Python