"对象#<对象>没有方法”;完整日历
"Object #<Object> has no method" fullcalendar
我正在尝试在谷歌日历和fullCalendar之间进行完全同步日历。但现在我在调整日期对象的大小时遇到了一个问题。
eventResize: function(event,dayDelta,minuteDelta,revertFunc,start,end) {
alert($.fullCalendar.formatDate(end, 'u'));
// alert($.fullCalendar.formatDate(start, 'yyyy-MM-dd'));
alert(
"The end date of " + event.title + "has been moved " +
dayDelta + " days and " +
minuteDelta + " minutes."
);
// Demande la confirmation du redimenssionnement
if (!confirm("Confirmation la modification?")) {
revertFunc();
}
},
所以我确信我做错了什么。。。
calendrier.js:
/*
* Mise en forme du calendrier et des différentes fonctions / interactions avec
* celui ci
*/
$(document).ready(function() {
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
$('#calendar').fullCalendar({
// Chargement des énévements depuis le calendrier google
events: {
// calendrier partager en public
url : 'https://www.google.com/calendar/feeds/riat.tom%40gmail.com/public/basic',
editable: true
},
// Entete du calendrier
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
// Vue par défaut mise en semaine
defaultView: 'agendaWeek',
// Permet de sélectionner les events
selectable: true,
// Aide à la sélection
selectHelper: true,
// Rend le calendrier éditable
editable: true,
///////////////////////////////////////////////////////////////////////////
// Lors d'une sélection d'une plage on propose un ajout avec entré de titre
///////////////////////////////////////////////////////////////////////////
select: function(start, end) {
// Recois un texte entré
var title = prompt('Event Title:');
// Création de l'évenement dans un format de date ISO8601 UTC
if(title != '' && title != null){
createEvent(
title,
$.fullCalendar.formatDate(start, 'yyyy-MM-dd') + 'T' + $.fullCalendar.formatDate(start, 'HH:mm:ss.000+01:00'),
$.fullCalendar.formatDate(end, 'yyyy-MM-dd') + 'T' + $.fullCalendar.formatDate(end, 'HH:mm:ss.000+01:00')
);
}
// on enleve la sélection pour laisser place à l'évenement
$('#calendar').fullCalendar('unselect');
// On actualise le calendrier en rappelant toutes les sources
$('#calendar').fullCalendar( 'refetchEvents' );
},
///////////////////////////////////////////////////////////////////////////
// Après un drag'n'drop d'un évenement
///////////////////////////////////////////////////////////////////////////
eventDrop: function(event,dayDelta,minuteDelta,revertFunc) {
alert(
event.title + " was moved " +
dayDelta + " days and " +
minuteDelta + " minutes."
);
if (!confirm("Are you sure about this change?")) {
revertFunc();
}
},
///////////////////////////////////////////////////////////////////////////
// Après une modification de temps d'intervention
///////////////////////////////////////////////////////////////////////////
eventResize: function(event,dayDelta,minuteDelta,revertFunc,start,end) {
alert($.fullCalendar.formatDate(end, 'u'));
// alert($.fullCalendar.formatDate(start, 'yyyy-MM-dd'));
alert(
"The end date of " + event.title + "has been moved " +
dayDelta + " days and " +
minuteDelta + " minutes."
);
// Demande la confirmation du redimenssionnement
if (!confirm("Confirmation la modification?")) {
revertFunc();
}
},
///////////////////////////////////////////////////////////////////////////
// ouverture d'une popup lors du clic sur l'évenement
///////////////////////////////////////////////////////////////////////////
eventClick: function(calEvent) {
///////////////////////////////////////////////////////////////////////////
// Suppression de l'évenement au clic
///////////////////////////////////////////////////////////////////////////
/*
deleteEvent(calEvent.title);
// Empeche la redirection vers le calendrier google
if (!confirm("Confirmation la modification?")) {
revertFunc();
}
*/
///////////////////////////////////////////////////////////////////////////
// Modification de l'évenement au clic
///////////////////////////////////////////////////////////////////////////
var newEvent = prompt('Entrer un nouveau nom');
editEvent('test a', newEvent);
return false;
}
});
});
index.php:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test calendrier</title>
<link rel='stylesheet' media="" type='text/css' href='css/fullcalendar.css' />
<script type='text/javascript' src='js/jquery.js'></script>
<script type='text/javascript' src='js/fullcalendar.min.js'></script>
<script type='text/javascript' src='js/gcal.js'></script>
<script type='text/javascript' src='js/jquery-ui.min.js'></script>
<script type='text/javascript' src='js/account.js'></script>
<script type='text/javascript' src='js/event.js'></script>
<script type='text/javascript' src='js/calendrier.js'></script>
<!-- <script src="http://www.google.com/jsapi?key=ABQIAAAAEobLGDxmyE-A9YknRQOjkBT2yXp_ZAY8_ufC3CFXhHIE1NvwkxRAbim8Zaj8QsHGwbTcqgYmr1rXlg" type="text/javascript"></script>
Clé localhost -->
<script src="http://www.google.com/jsapi?key=ABQIAAAAEobLGDxmyE-A9YknRQOjkBRBSQP7kN3nJ0TG1omTe6BwHiHeOBSf0Z4zFlArCAZ6g9Hu-lT6VojEeQ" type="text/javascript"></script>
<script type="text/javascript">
// Récupération des données utilisateurs
google.load("gdata", "1")
</script>
</head>
<body>
<input type='checkbox' id='drop-remove' /> <label for='drop-remove'>remove after drop</label>
<div class='external-event'>My Event 1</div>
<div class='external-event'>My Event 2</div>
<div class='external-event'>My Event 3</div>
<div class='external-event'>My Event 4</div>
<div class='external-event'>My Event 5</div>
<div id="calendar" style="width:900px; margin: 0 px auto;"></div>
<img src="images/any.jpg" style="position:absolute; top:-10000px;" />
<input type="button" value="Affiche Event private" onclick="alert(retriveEvent())" />
<input type="button" value="login" onclick="getMyFeed();" />
<input type="button" value="info" onclick="alert(doCheck());" />
<input type="button" value="logout" onclick="doLogout();" />
<input type ="button" value="refresh" onclick="$('#calendar').fullCalendar( 'refetchEvents' );" />
<input type="button" value="affiche date" />
<div id="val"></div>
</body>
</html>
我错了。
答案是我用了坏物体。我尝试使用"开始"而不是"事件"
好的代码是这样的:
eventResize: function(event,dayDelta,minuteDelta,revertFunc) {
alert(event.start);
alert(event.end);
/*
alert(
"The end date of " + event.title + "has been moved " +
dayDelta + " days and " +
minuteDelta + " minutes."
);
*/
// Demande la confirmation du redimenssionnement
if (!confirm("Confirmation la modification?")) {
revertFunc();
} else {
alert(event.title);
alert('event édité');
}
},
相关文章:
- 引用对象中的通用值
- jQuery匹配JSON对象的部分文本
- 节点导出返回一个空对象
- 如何在Javascript中将JSon对象转换为数组
- 我可以在json对象中添加一个函数吗
- 使用JS将数组转换为json对象
- 全局变量和全局对象的属性之间有什么区别吗
- 比较从函数和生成的日期对象
- Javascript,访问一个主要对象模块模式中的每个对象
- JavaScript打印功能使日历停止工作
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 调整窗口大小时,可拖动的对象会出现在容器外部
- 如何使用javascript从主svg对象动态创建svg视图框
- 显示一年中每一天对象详细信息的日历
- 如何在 AngularJS 中获取剑道日历对象
- “对象”未定义日历.js
- "对象#<对象>没有方法”;完整日历
- Fullcalendar:如何通过日历对象在Fullcalendar上获得选定的开始和结束日期时间
- 如何为对象列表显示多个日历
- 我如何在Jquery中编码json对象周日历主题解析json