我已经使用FullCalendar生成了一些事件。我想重新排列页眉中的按钮。
例如,“月”、“周”和“日”按钮应显示在第一行。标题应该放在prev和next按钮之间。如何实现这一点?
提前道谢。
$('#calendar').fullCalendar({
header: {
left: 'prev',
center: 'title',
right : 'next'
},
titleFormat: {
month: 'MMMM yyyy',
week: 'MMMM yyyy',
day: 'MMMM yyyy'
},
contentHeight: 300,
height: 200 ,
eventRender: function(event, element) {
element.popover({
title: event.title1,
placement: 'auto',
html: true,
trigger: 'click',
animation:'true',
content: event.msg,
container: 'body'
});
$('body').on('click', function(e) {
if (!element.is(e.target) && element.has(e.target).length === 0 && $('.popover').has(e.target).length === 0)
element.popover('hide');
});
},
events: eventData
});
对于其他遇到这个问题的人来说,在V2.4.0中,自定义按钮被添加到FullCalendar中:
https://fullcalendar.io/docs/display/custombuttons/
$('#calendar').fullCalendar({
customButtons: {
myCustomButton: {
text: 'custom!',
click: function() {
alert('clicked the custom button!');
}
}
},
header: {
left: 'prev,next today myCustomButton',
center: 'title',
right: 'month,agendaWeek,agendaDay'
}
});
使用fullcalendar 2.0.3
在完整日历的初始化中,您可以将
header: {
left: 'prev,title,next today',
center: '',
right: 'month,agendaWeek,agendaDay'
},
在render()内部的完整calendar.js中
function render() {
tm = options.theme ? 'ui' : 'fc';
var sections = options.header;
if (sections) {
element = $("<table class='fc-header' style='width:100%'/>")
.append($("<tr/>").append(renderSection('right')))
.append(
$("<tr/>")
.append(renderSection('left'))
).append(renderSection('center')
);
return element;
}
}
您可以根据需要自定义表创建。
但正如@Milz所说,编辑代码可能会破坏您在下一个完整日历版本中所做的更改。
FullCalendar中没有提供所需内容的可用方法。
但是,您可以手动添加。在下面的代码中,我添加了函数AddButton
和BindButtonActions
,它们在FullCalendar初始化后调用。第一个函数创建按钮所需的DOM,并将生成的内容追加到FullCalendar头。
第二个方法将click
操作绑定到按钮(也就是说,当您单击Week时,将有一个对changeView方法的调用)。
另一个选择是更改FullCalendar的源代码,但我不同意这个选择,因为更新插件会更加困难。
下面是一个工作的jsfiddle和代码。
<div id="calendar"></div>
<script>
$(document).ready(function() {
$('#calendar').fullCalendar({
header: {
left: 'prev',
center: 'title',
right : 'next'
},
titleFormat: {
month: 'MMMM YYYY',
week: 'MMMM YYYY',
day: 'MMMM YYYY'
},
contentHeight: 300,
height: 200,
eventRender: function(event, element) {
element.popover({
title: event.title1,
placement: 'auto',
html: true,
trigger: 'click',
animation:'true',
content: event.msg,
container: 'body'
});
$('body').on('click', function(e) {
if (!element.is(e.target) && element.has(e.target).length === 0 && $('.popover').has(e.target).length === 0)
element.popover('hide');
});
}
});
addButtons();
bindButtonActions();
function addButtons() {
// create buttons
var month = $("<span/>")
.addClass("fc-button fc-button-month fc-state-default fc-corner-left fc-state-active")
.attr({
unselectable: "on"
})
.text("moth");
var week = $("<span/>")
.addClass("fc-button fc-button-agendaWeek fc-state-default")
.attr({
unselectable: "on"
})
.text("week");
var day = $("<span/>")
.addClass("fc-button fc-button-agendaDay fc-state-default fc-corner-right")
.attr({
unselectable: "on"
})
.text("day");
// create tr with buttons.
// Please note, if you want the buttons to be placed at the center or right,
// you will have to append more <td> elements
var tr = $("<tr/>").append(
$("<td/>")
.addClass("fc-header-left")
.append(month)
.append(week)
.append(day)
);
// insert row before title.
$(".fc-header").find("tr:first").before(tr);
}
function bindButtonActions(){
var date = new Date();
// bind actions to buttons
$(".fc-button-month, .fc-button-agendaWeek, .fc-button-agendaDay").on('click', function() {
var view = "month";
if ($(this).hasClass("fc-button-agendaWeek")) {
view = "agendaWeek";
} else if ($(this).hasClass("fc-button-agendaDay")) {
view = "agendaDay";
}
$('#calendar').fullCalendar('changeView', view);
});
}
});
</script>
我将angular2与angular2 fullcalendar一起使用。在我的项目中,我从后端获取数据。现在我的问题是,当我使用选择日期添加事件时,我希望它在日历上显示成功提交数据,而无需重新加载页面。以前我使用的是
问题内容: 我有一张桌子: 可以通过管理员更改订单,因此可以更改订单列。在管理方面,我有一个带有选择框的表单,用于输入数据库。在插入的列之后,我应该使用哪种查询来对+1进行排序。 我想以使服务器负载最小的方式执行此操作,因为此表当前有1200行。这是保存表顺序的正确方法还是有更好的方法? 任何帮助表示赞赏 编辑: 这是我想要做的,这要归功于itsmatt: 想要将第1行重新排序为第1100行之后,
问题内容: 如果我有列表,如何以任意方式重新排序商品? 编辑:我不想洗牌。我想以预定义的方式对它们进行重新排序。(例如,我知道旧列表中的第3个元素应成为新列表中的第一个元素) 问题答案: 你可以这样
在python中是否可以按给定的索引重新排序列表? 如果我有列表: 我想按第二个索引重新排序,使其具有如下内容:
我有这样一个情况: 我必须对进行排序,该列表还包含的ID,排序必须为: null
问题内容: 我有一个这样的清单清单。 现在,我需要遍历上面的列表并输出一个字符串列表,如下所示(原始列表中没有数字) 问题答案: 准确执行您指定的操作的最简单解决方案是: 这基本上等效于迭代版本: 但是,这并不是遍历具有任意维数的多维列表的通用方法,因为嵌套列表推导/嵌套的for循环可能很难看。但是,对于2或3维列表,您应该放心。 如果您确实决定需要平整3个以上的尺寸,我建议实现一个递归遍历函数,