DHTMLX 调度程序自定义时间轴 AM/PM 天
DHTMLX Scheduler custom Timeline with AM/PM days
我在项目的时间线视图中使用 DHTMLX 调度程序,工作时间是早上 7 点到下午 5 点。我能够每天创建一个 AM/PM 视图,但是视图中不考虑 first_hour 和 last_hour 配置。截图显示更多。早上的第一个事件应该显示在更靠左的位置,因为它从 7:30Am 开始。
我的配置:
scheduler.locale.labels.timeline_tab = "Timeline";
scheduler.locale.labels.section_custom = "Section";
scheduler.config.dblclick_create = false;
scheduler.config.edit_on_create = false;
scheduler.config.details_on_dblclick = false;
scheduler.config.details_on_create = false;
scheduler.config.start_on_monday = true;
scheduler.config.first_hour = 7;
scheduler.config.last_hour = 17;
scheduler.config.full_day = true;
scheduler.config.mark_now = false;
scheduler.config.drag_move = false;
scheduler.config.drag_resize = false;
//===============
//Configuration
//===============
scheduler.createTimelineView({
name: "timeline",
x_unit: "hour",
x_date: "%A",
x_step: 12,
x_size: 14,
x_start: 0,
x_length: 14,
y_unit: scheduler.serverList('teams'), // sections and events from same ajax call
y_property: "team_id",
render: "bar",
section_autoheight: false,
dy: 30,
dx: 100,
// first_hour: 7,
// last_hour: 17,
second_scale: {
x_unit: "day", // unit which should be used for second scale
x_date: "%D %j %M"
}
});
我们将不胜感激。
编辑:
根据此处的答案更新后结果:
first_hour
、last_hour
配置应用于日、周、单位视图中的 Y 轴(检查 Documentation)。
目前,要在时间轴视图中隐藏一天开始和结束的小时数,您应该只有 1 个 X 轴,就像这样 sample. I.e. visible part of the event is from 10 to 18 because of first_hour
, end_hour
properties of createTimelineView
method. Check the screenshot。
还有 ignore_[viewName]
function 可用于隐藏等于刻度最小步长的间隔(在您的情况下为 12 小时)。
如果设置最小 step = 6
(小时)并在 addMarkedTimespan. I tried to create a snippet for you http://snippet.dhtmlx.com/46ba545ad 之前禁用早上 6-7 点和下午 5-6 点,这可能有助于解决您的问题,但发现此条件的第二部分if(date.getHours() < 6 || date.getHours() > 17){
工作不正常。活动可以在下午 6 点之前创建。我们会尽快修复它,但现在我无法指定确切时间。我建议你使用第一种方法,1 scale 来解决这个问题。
我在项目的时间线视图中使用 DHTMLX 调度程序,工作时间是早上 7 点到下午 5 点。我能够每天创建一个 AM/PM 视图,但是视图中不考虑 first_hour 和 last_hour 配置。截图显示更多。早上的第一个事件应该显示在更靠左的位置,因为它从 7:30Am 开始。
我的配置:
scheduler.locale.labels.timeline_tab = "Timeline";
scheduler.locale.labels.section_custom = "Section";
scheduler.config.dblclick_create = false;
scheduler.config.edit_on_create = false;
scheduler.config.details_on_dblclick = false;
scheduler.config.details_on_create = false;
scheduler.config.start_on_monday = true;
scheduler.config.first_hour = 7;
scheduler.config.last_hour = 17;
scheduler.config.full_day = true;
scheduler.config.mark_now = false;
scheduler.config.drag_move = false;
scheduler.config.drag_resize = false;
//===============
//Configuration
//===============
scheduler.createTimelineView({
name: "timeline",
x_unit: "hour",
x_date: "%A",
x_step: 12,
x_size: 14,
x_start: 0,
x_length: 14,
y_unit: scheduler.serverList('teams'), // sections and events from same ajax call
y_property: "team_id",
render: "bar",
section_autoheight: false,
dy: 30,
dx: 100,
// first_hour: 7,
// last_hour: 17,
second_scale: {
x_unit: "day", // unit which should be used for second scale
x_date: "%D %j %M"
}
});
我们将不胜感激。
编辑:
根据此处的答案更新后结果:
first_hour
、last_hour
配置应用于日、周、单位视图中的 Y 轴(检查 Documentation)。
目前,要在时间轴视图中隐藏一天开始和结束的小时数,您应该只有 1 个 X 轴,就像这样 sample. I.e. visible part of the event is from 10 to 18 because of first_hour
, end_hour
properties of createTimelineView
method. Check the screenshot。
还有 ignore_[viewName]
function 可用于隐藏等于刻度最小步长的间隔(在您的情况下为 12 小时)。
如果设置最小 step = 6
(小时)并在 addMarkedTimespan. I tried to create a snippet for you http://snippet.dhtmlx.com/46ba545ad 之前禁用早上 6-7 点和下午 5-6 点,这可能有助于解决您的问题,但发现此条件的第二部分if(date.getHours() < 6 || date.getHours() > 17){
工作不正常。活动可以在下午 6 点之前创建。我们会尽快修复它,但现在我无法指定确切时间。我建议你使用第一种方法,1 scale 来解决这个问题。