newVue({

el:'#app',

data: {//日历

currentYear: 2019,//lockYear:2019,//返回当前年

currentMonth: 1,//lockMonth:1,//返回当前月

currentDay: 1,//lockDay:1,//返回当前日

setDay:1,//取月份默认从一号开始取

currentWeek: 2,//周几

setWeek:1,

days: [],//每月天数

week_day:[],//每周天数

today_key:1,//取today所在week为第一个week_day

scroll:0,//滚动高度

dayScrollTop:0,//日历需要隐藏的高度

showMonth:true,//上下拉切换月和周

//日历滑动换月

startX:0,//触摸点

endX:0,//松开点

startY:0,

endY:0,//添加提醒设置时间

currentHour:0,

currentMinute:0,

getRemindTime:null,

eventId:1,//点击显示

show:false,

selectTime:false,//选项卡

tabtit: ["已设置提醒", "创建时间", "最后发言时间"],

tabmain: [new Array(), new Array(), newArray()],

num:0,

selectIndex:-1,

},

created() {this.initData(null);

},

watch: {//渲染完后,获取高度

days(){this.$nextTick(function(){/*console.log(this.$refs.daysBox.offsetHeight,this.$refs.daysBox.offsetTop);*/

var daysBoxHeight=this.$refs.daysBox.offsetHeight;var daysBoxHidden=daysBoxHeight/6*3;

var daysTop=this.$refs.daysBox.offsetTop;this.dayScrollTop=daysTop+daysBoxHidden;

});

},

},

methods: {

initData(cur) {vardate;if(cur) {

date= newDate(cur);

}else{

date= newDate();this.lockYear =date.getFullYear();this.lockMonth = date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1;this.lockDay = date.getDate() <10?'0'+date.getDate():date.getDate();

}this.currentDay = date.getDate() <10?'0'+date.getDate():date.getDate();//showMonth=false

this.currentWeek =date.getDay();

date.setDate(1);this.currentYear =date.getFullYear();this.currentMonth = date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1;/*this.currentWeek = date.getDay(); // 1...6,0*/

this.setWeek=date.getDay();this.currentHour = date.getHours() < 10 ? "0" +date.getHours() : date.getHours();this.currentMinute = date.getMinutes() < 10 ? "0" +date.getMinutes() : date.getMinutes();var str=this.formatDate(this.currentYear , this.currentMonth, this.currentDay);var set_str = this.formatDate(this.currentYear , this.currentMonth, 1);/*console.log("today:" + str + "," + this.currentWeek);*/

this.days.length = 0;this.week_day.length=0;//默认1号,从一号开始计算,负数代表上个月天数,超过本月天数为下月天数

for (var i = this.setWeek; i >= 0; i--) {var d = newDate(set_str);

d.setDate(d.getDate()-i);/*console.log(d);*/

this.days.push(d);

}for (var i = 1; i <= 35 - this.setWeek-1 ; i++) {var d = newDate(set_str);

d.setDate(d.getDate()+i);/*console.log(d);*/

this.days.push(d);

}for (var i = this.currentWeek; i >= 0; i--) {var d = newDate(str);

d.setDate(d.getDate()-i);/*console.log(d);*/

this.week_day.push(d);

}for (var i = 1; i <= 7 - this.currentWeek-1; i++) {var d = newDate(str);

d.setDate(d.getDate()+i);/*console.log(d);*/

this.week_day.push(d);

}this.tabmain[0].length=0;for(var i=0;i

this.tabmain[0].push(key_value);/*console.log(this.tabmain[0].length);*/}

},

eventAdd(){this.show=true;

},

timeAdd(){this.selectTime=true;

},

backToday(){this.initData(null);

},

pickPre(year=this.currentYear, month=this.currentMonth) {//setDate(0); 上月最后一天//setDate(35) date后35天,保证为下个月

var d = new Date(this.formatDate(year , month , 1));

d.setDate(0);/*console.log(d);*/

this.initData(this.formatDate(d.getFullYear(),d.getMonth() + 1,1));this.currentYear=d.getFullYear();this.currentMonth=d.getMonth() + 1;

},

pickNext(year=this.currentYear, month=this.currentMonth) {var d = new Date(this.formatDate(year , month , 1));

d.setDate(35);/*console.log(d);*/

this.initData(this.formatDate(d.getFullYear(),d.getMonth() + 1,1));this.currentYear=d.getFullYear();this.currentMonth=d.getMonth() + 1;

},

pickPre_week(year=this.currentYear, month=this.currentMonth,day=this.currentDay) {//setDate(0); 上月最后一天//setDate(35) date后35天,保证为下个月

var d = new Date(this.formatDate(year , month , day));

d.setDate(d.getDate()-7);/*console.log(d);*/

this.initData(this.formatDate(d.getFullYear(),d.getMonth() + 1,d.getDate()));this.currentYear=d.getFullYear();this.currentMonth=d.getMonth() + 1;this.currentDay=d.getDate();

},

pickNext_week(year=this.currentYear, month=this.currentMonth,day=this.currentDay) {var d = new Date(this.formatDate(year , month , day));

d.setDate(d.getDate()+7);

console.log(d);this.initData(this.formatDate(d.getFullYear(),d.getMonth()+1,d.getDate()));this.currentYear=d.getFullYear();this.currentMonth=d.getMonth()+1;this.currentDay=d.getDate();

console.log(this.currentYear,this.currentMonth,this.currentDay);

},

down(event){this.startX=event.clientX;this.startY=event.clientY;

},

move(event){this.endX=event.clientX;if((this.startX-this.endX)>0){

console.log('zuohua');this.pickNext(this.currentYear, this.currentMonth);

}if((this.startX-this.endX)<0){this.pickPre(this.currentYear, this.currentMonth);

console.log('youhua');

}/*alert('滑动成功');*/},

move_week(event){this.endX=event.clientX;if((this.startX-this.endX)>0){this.pickNext_week(this.currentYear, this.currentMonth);

}if((this.startX-this.endX)<0){this.pickPre_week(this.currentYear, this.currentMonth);

}

},

heightChange(){this.endY=event.clientY;if(this.scroll>0){this.showMonth=false;this.scroll=0;

}if(this.scroll<0){this.showMonth=true;

}

},//返回 类似 YYYY-MM-DD 格式的字符串

formatDate(year,month,day){var y =year;var m =month;if(m<10) {

m= "0" +m;

}var d =day;if(d<10) {

d= "0" +d;

}return y+"-"+m+"-"+d

},

eventAdd_false(){this.show=false;

},

eventAdd_true(id=this.eventId){/*var id = localStorage.getItem(this.eventId);*/

var name=this.$refs.eventName.value;var info=this.$refs.eventInfo.value;var role=this.$refs.eventRole.value;var time=this.getRemindTime;if(name && info && role &&time){var event={"eventName":name,"eventInfo":info,"eventRol":role,"eventTime":time}

localStorage.setItem(id,JSON.stringify(event));/*console.log(localStorage.length);*/

this.eventId++;this.tabmain[0].push(event);this.show=false;/*alert('name'+':'+name +'info'+':'+info +'role'+':'+role +'time'+':'+time + '设置成功');*/}else{

alert('输入不能为空');

}/*console.log(localStorage.getItem("eventId"));*/},

setTime_false(){this.selectTime=false;

},

setTime_true(){this.selectTime=false;this.getRemindTime=this.currentYear + "-" +this.currentMonth + "-" +this.currentDay + " " +this.currentHour + ":" +this.currentMinute + ":00";

},

tab(index) {this.num =index;

},

select(index){this.selectIndex=index;

},

closeDiv(){this.selectIndex=-1;

},

menu() {this.scroll = document.documentElement.scrollTop ||document.body.scrollTop;/*console.log(this.scroll,this.dayScrollTop);*/

/*if (document.documentElement.scrollTop > 200) {

alert('页面高度大于200执行操作')

} else {

alert('页面高度xiao于200执行操作')

}*/

/*console.log(document.getElementsByClassName('days').offsetHeight);

console.log(document.documentElement.scrollTop)*/

/*console.log(this.$refs.elements.value);*/},

eventScroll(){if(this.scroll-this.dayScrollTop>0){var date = newDate();this.currentYear=date.getFullYear();this.currentMonth = date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1;this.currentWeek=date.getDay();for (var i = this.currentWeek; i >= 0; i--) {

date.setDate(date.getDate()-i);/*console.log(d);*/

this.week_day.push(date);

}this.showMonth=false;/*alert('ok');*/}else{

}

}

},//methods

mounted() {

window.addEventListener('scroll', this.menu);

},

destroyed () {

window.removeEventListener('scroll', this.menu)

},

});///new Vue

vue日程安排_vue日历/日程提醒/html5本地缓存相关推荐

  1. html5本地缓存LocalStorage

    HTML5 LocalStorage 本地存储 HTML5 LocalStorage 本地存储 说到本地存储,这玩意真是历尽千辛万苦才走到HTML5这一步,之前的历史大概如下图所示: 最早的Cooki ...

  2. vue日程安排_vue 时间安排表

    仿照这种时间安排表的形式,使用vue完成这种类似课表的显示效果 首先将每周的预约信息放入一个长度为7的数组中,0-6表示星期天到星期六 创建一个33*7的数组 每个格子1表示该时间空闲,null表示该 ...

  3. html5本地缓存如何提交,HTML5: 本地缓存

    HTML5 提供了两种在client存储数据的新对象: localStorage:没有时间限制的数据存储,在同一个浏览器中,仅仅要没被手动清理,第二天.第二周或下一年之后,数据依旧可用. sessio ...

  4. html5 数据缓存,HTML5: 本地缓存

    HTML5 提供了两种在客户端存储数据的新对象: localStorage:没有时间限制的数据存储,在同一个浏览器中,只要没被手动清理,第二天.第二周或下一年之后,数据依然可用. sessionSto ...

  5. html5图片本地缓存,HTML5: 本地缓存

    HTML5 提供了两种在client存储数据的新对象: localStorage:没有时间限制的数据存储,在同一个浏览器中,仅仅要没被手动清理,第二天.第二周或下一年之后,数据依旧可用. sessio ...

  6. html缓存在本地缓存,HTML5 本地缓存 window.localStorage

    Conway&#39;s Game of Life: An Exercise in WPF, MVVM and C# This blog post was written for the Lo ...

  7. html5 本地缓存

    网站添加 <!DOCTYPE html> <html manifest="sango.manifest"> 服务器的IIS的http头添加mime映射为 . ...

  8. 利用ASP.NET日期控件制作“会议日程安排”(贴首页过把瘾)

    本文转载自: https://www.cnblogs.com/peaceli/archive/2012/08/06/1359862.html 作者:peaceli 转载请注明该声明. 大家应该比较熟悉 ...

  9. matlab教师考试安排,2018教师资格证考试科目及日程安排

    原标题:2018教师资格证考试科目及日程安排 距离下半年考试仅剩119天!教师资格证培训班进行最后一轮招生,名额有限,招满截止,19年开始报考教师资格证考试的人数将大大提升,难度也会提升!今年无疑是最 ...

最新文章

  1. 清华理工男,跳了7年舞,来华为一年当了PL,这什么小哥哥
  2. linux使用rz、sz快速上传、下载文件
  3. Nginx做负载均衡报:nginx: [emerg] could not build the types_hash
  4. 电子商务实战课程-张晨光-专题视频课程
  5. nosql的数据服务_使用NoSQL实现实体服务–第1部分:概述
  6. native.loadlibrary获取路径不对_【Python专题(三)】Python模块导入与路径管理
  7. 云服务器如何链接本地打印机_利用FileZilla搭建云服务器FTP服务端和本地客户端...
  8. Adobe illustrator 批量变换同时选中的单个对象 - 连载 12
  9. Listview刷新数据
  10. Oracle imp 导入dmp文件到数据库
  11. “数据类型不一致: 应为 NUMBER, 但却获得 BINARY”解决方法
  12. 【方案分享】2022虎年新春潮玩嘉年华活动策划方案:我们超虎的.pptx(附下载链接)...
  13. win10系统安装Docker详解
  14. (附源码)spring boot物联网智能管理平台 毕业设计 211120
  15. Python 大作业
  16. 谷歌图像爬虫方法总结与教程
  17. 20.JVM监控以及诊断工具-GUI篇
  18. html网页设计代码作业——代码质量好-重庆火锅(5页) HTML+CSS+JavaScript 大学生网页制作期末作业
  19. 1896-2021历届奥运会奖牌动态排序动画(Python数据采集)
  20. 【QT学习】基础篇 3.QT助手(数据手册)存放位置和使用

热门文章

  1. 查看mysql状态 关闭_查看mysql状态
  2. 经济学原理笔记(一)
  3. AOC V24t最薄24英寸
  4. RHEL-Linux安全加固与基础优化(一)
  5. SpringBoot实现文件上传(Excel表)
  6. java mp4视频转换成h5_前端canvas动画如何转成mp4视频的方法
  7. android 编译报错 xm*,解决Android Studio编译后安装apk报错:The APK file does not exist on disk...
  8. 不能上网修复Winsock损坏的办法
  9. html jq五子棋,jQuery实现的五子棋游戏实例
  10. update更新excel如何指定列为memo_Excel也能设计回写类报表