我使用Fullcalendar 1.5.3和JQuery 1.7.2 - 在我的本地时区中的数据完全显示出来,而是在其他时区间歇工作我想是由于相对于本地时间的时区的时间差<。 / p>
我正在从文件中获取JSON提要,日期作为Y-m-d存储在MySQL中。
我已经阅读了ignoreTimezone,并在fullcalendar.js和页面调用日历对象中将其设置为false和true,但它没有任何区别。 ignoreTimezone的文档提到了我的ISO8601日期,而我的日期不是。
在下面具体的例子,在美国西海岸客户看到圣诞节当天表示作为12月24日 - 我已经得到了,他们已经使用多个浏览器和机客户端的确认和我有这个问题,多个客户端所以听起来它没有本地化到一台客户机等。
以下是代码:
<script>
$(document).ready(function() {
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
ignoreTimezone: false,
titleFormat: {
month: 'MMMM yyyy',
week: "MMM d[ yyyy]{ '—'[ MMM] d yyyy}",
day: 'dddd, MMM d, yyyy'
},
columnFormat: {
month: 'ddd',
week: 'ddd d/M',
day: 'dddd d/M'
},
timeFormat: { // for event elements
'': 'H(:mm)t' // default
},
eventSources: [
'public_holidays_feed.php'
]
})
});
</script>
我的JSON Feed的片段显示:
[
{"id":"1","title":"New Year's Day (USA)","start":"2012-01-02","end":"2012-01-02","backgroundColor":"#000000","allDay":true},
{"id":"2","title":"New Year's Day (UK)","start":"2012-01-02","end":"2012-01-02","backgroundColor":"#000000","allDay":true},
{"id":"3","title":"Birthday of Martin Luther King, Jr. (USA)","start":"2012-01-16","end":"2012-01-16","backgroundColor":"#000000","allDay":true},
{"id":"4","title":"Washington's Birthday (USA)","start":"2012-02-20","end":"2012-02-20","backgroundColor":"#000000","allDay":true},
{"id":"5","title":"Good Friday (UK)","start":"2012-04-06","end":"2012-04-06","backgroundColor":"#000000","allDay":true}
]
如何让上述内容忽略本地时区并仅使用服务器时区,如果MySQL中的日期显示为2012-12-25,那么每个人都应该看到它们,无论它们在哪里?
由于
答案 0 :(得分:0)
你好我这个问题有很多问题, 请确保你的json feed已满:
即:
[{"id":"190","allDay":false,"editable":true,"title":"Sam Shift","start":"2013-07-14 18:00:00","end":"2013-07-15 02:00:00"}]
我知道在文档中“allDay”默认为false,但如果不是全天,请标记, 当然标记开始时间和结束时间。
如果您的活动是一整天,请务必将其标记。
希望它能奏效。
**当然可以根据需要设置日期和时间,没有与时区的连接,每个客户端都会在您发送的日期字符串中看到该事件。