Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何使事件日历小部件在本地工作?_Html - Fatal编程技术网

Html 如何使事件日历小部件在本地工作?

Html 如何使事件日历小部件在本地工作?,html,Html,我一直在寻找一个本地运行日历小部件,我可以在浏览器选项卡中打开并使用它,我发现了以下页面: !函数(){ var today=时刻(); 功能日历(选择器、事件){ this.el=document.querySelector(选择器); 这个事件=事件; 此.current=力矩().date(1); 这个.draw(); var current=document.querySelector('.today'); 如果(当前){ var self=这个; setTimeout(函数(){ 开

我一直在寻找一个本地运行日历小部件,我可以在浏览器选项卡中打开并使用它,我发现了以下页面:

!函数(){
var today=时刻();
功能日历(选择器、事件){
this.el=document.querySelector(选择器);
这个事件=事件;
此.current=力矩().date(1);
这个.draw();
var current=document.querySelector('.today');
如果(当前){
var self=这个;
setTimeout(函数(){
开放日(当前);
}, 500);
}
}
Calendar.prototype.draw=函数(){
//创建标题
这个.drawHeader();
//取款月份
这个月();
这个.drawLegend();
}
Calendar.prototype.drawHeader=函数(){
var self=这个;
如果(!this.header){
//创建标题元素
this.header=createElement('div','header');
this.header.className='header';
this.title=createElement('h1');
var right=createElement('div','right');
right.addEventListener('click',function(){self.nextMonth();});
var left=createElement('div','left');
left.addEventListener('click',function(){self.prevMonth();});
//附加元素
this.header.appendChild(this.title);
this.header.appendChild(右);
this.header.appendChild(左);
this.el.appendChild(this.header);
}
this.title.innerHTML=this.current.format('MMMM-YYYY');
}
Calendar.prototype.drawMonth=函数(){
var self=这个;
this.events.forEach(函数(ev){
ev.date=self.current.clone().date(Math.random()*(29-1)+1);
});
如果(本月){
this.oldMonth=this.month;
this.oldMonth.className='month out'+(self.next?'next':'prev');
this.oldMonth.addEventListener('webkitAnimationEnd',function(){
self.oldMonth.parentNode.removeChild(self.oldMonth);
self.month=createElement('div','month');
self.backFill();
self.currentMonth();
self.fowardFill();
自身月数(self.month);
setTimeout(函数(){
self.month.className='month in'+(self.next?'next':'prev');
}, 16);
});
}否则{
this.month=createElement('div','month');
本月(本月);
这个。回填();
此.currentMonth();
这个。fowardFill();
this.month.className='month new';
}
}
Calendar.prototype.回填=函数(){
var clone=this.current.clone();
var dayOfWeek=clone.day();
如果(!dayOfWeek){return;}
克隆。减去('days',dayOfWeek+1);
对于(var i=dayOfWeek;i>0;i--){
this.drawDay(clone.add('days',1));
}
}
Calendar.prototype.fowardFill=函数(){
var clone=this.current.clone().add('months',1)。subtract('days',1);
var dayOfWeek=clone.day();
如果(dayOfWeek==6){return;}
对于(VarI=dayOfWeek;i<6;i++){
this.drawDay(clone.add('days',1));
}
}
Calendar.prototype.currentMonth=函数(){
var clone=this.current.clone();
而(clone.month()==此.current.month()){
这一天(克隆);
克隆。添加('天',1);
}
}
Calendar.prototype.getWeek=函数(天){
如果(!this.week | day.day()==0){
this.week=createElement('div','week');
本月(本周);
}
}
Calendar.prototype.drawDay=函数(天){
var self=这个;
本周(天);
//外天
var outer=createElement('div',this.getDayClass(day));
outer.addEventListener('click',function(){
self.openDay(本);
});
//日名
var name=createElement('div','day name',day.format('ddd');
//日数
var number=createElement('div','day number',day.format('DD');
//事件
var events=createElement('div','day events');
本节列出了事件(日期、事件);
外部。附加子对象(名称);
外部。追加子项(编号);
外部事件(事件);
本.周.儿童(外);
}
Calendar.prototype.DrainEvents=函数(日期,元素){
if(day.month()==此.current.month()){
var todaysEvents=this.events.reduce(函数(memo,ev){
如果(ev.date.ISAME(日期,'day')){
推送(ev);
}
返回备忘录;
}, []);
todaysEvents.forEach(功能(ev){
var evSpan=createElement('span',ev.color);
元素。追加子元素(evSpan);
});
}
}
Calendar.prototype.getDayClass=函数(天){
班级=['天'];
if(day.month()!==此.current.month()){
类。推送(“其他”);
}else if(today.isname(day,'day')){
课程。推送(“今天”);
}
返回类。加入(“”);
}
Calendar.prototype.openDay=函数(el){
变量详细信息,箭头;
var dayNumber=+el.querySelectorAll('.dayNumber')[0]。innerText | |+el.querySelectorAll('.dayNumber')[0]。textContent;
var day=this.current.clone().date(dayNumber);
var currentOpened=document.querySelector('.details');
//检查当前行上是否有打开的详细信息框
if(currentOpened&¤tOpened.parentNode==el.parentNode){
详细信息=当前已打开;
arrow=document.querySelector('.arrow');
}否则{
//关闭不同周行的开放事件
//currentOpened&¤tOpened.parentNode.removeChild(currentOpened);
如果(当前打开){
currentOpened.addEventListener('webkitAnimationEnd',function(){
currentOpened.parentNode.removeChild(currentOpened);
});
currentOpened.addEventListener('oanimationend',function(){
currentOpened.parentNode.removeChild(currentOpened);
});
currentOpened.addEventListener('msAnimationEnd',函数(){
currentOpened.parentNode.removeChild(currentOpened);
});
currentOpened.addEventListener('animationend',
<div id="calendar"></div>
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.5.1/moment.min.js"></script>
<script src="script.js"></script>
<link rel="stylesheet" type="text/css" href="style.css">
<div id="calendar"></div>
<script src="moment.min.js"></script>
<script src="script.js"></script>
<link rel="stylesheet" type="text/css" href="style.css">