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_hourlast_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 来解决这个问题。