getTaskPosition

вычисляет положение и размер DOM элемента задачи в области временной шкалы

object getTaskPosition(Task task, [Date from,Date to] );
taskTaskобъект задачи
fromDateнеобязательный, дата начала элемента
toDateнеобязательный, дата окончания элемента
objectобъект размера

Example

// добавление отображения базовой линии
gantt.addTaskLayer(function draw_planned(task) {
    if (task.planned_start && task.planned_end) {
        const sizes = gantt.getTaskPosition(task, task.planned_start, task.planned_end);         const el = document.createElement('div');
        el.className = 'baseline';
        el.style.left = sizes.left + 'px';
        el.style.top = sizes.top + 'px';
        el.style.width = sizes.width + 'px';
        el.style.height = sizes.height + 'px';
        return el;
    }
    return false;
});

Related samples

Details

Метод возвращает объект со следующими свойствами:

  • left - позиция CSS слева в пикселях
  • top - позиция CSS сверху в пикселях
  • height - CSS высота элемента бара в пикселях (определяется либо конфигурацией bar_height, либо свойством task.bar_height объекта задачи)
  • rowHeight - CSS высота строки задачи в пикселях (определяется либо конфигурацией row_height, либо свойством task.row_height объекта задачи) (добавлено в v7.1)
  • width - CSS ширина в пикселях (определяется периодом между датами начала и окончания задачи или датами 'from', 'to', если они предоставлены)

Если предоставлен только один аргумент, метод будет использовать task.start_date/task.end_date для расчета значений width и left. В противном случае будут использованы значения дат из второго и третьего аргументов.

Обратите внимание, что метод всегда использует как дату, так и время предоставленных дат, независимо от настроек временной шкалы. Это означает, что два вызова функции, приведенные ниже:

gantt.getTaskPosition(task, new Date(2019, 3, 19, 1, 0), new Date(2019, 3, 19, 1, 0)); 
// и
gantt.getTaskPosition(task, new Date(2019, 3, 19, 1, 0), new Date(2019, 3, 19, 5, 0));

вернут области различного размера, не только в шкале часов, но и в шкалах дней/месяцев/лет.

К началу