getTaskPosition

Berechnet die Position und Größe des DOM-Elements der Aufgabe im Zeitbereich

object getTaskPosition(Task task, [Date from,Date to] );
taskTaskdas Aufgabenobjekt
fromDateoptional, das Startdatum des Elements
toDateoptional, das Enddatum des Elements
objectdas Größenobjekt

Example

// Hinzufügen der Baseline-Anzeige
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

Die Methode gibt ein Objekt mit den folgenden Eigenschaften zurück:

  • left - die CSS-Linke Position in Pixel
  • top - die CSS-Obere Position in Pixel
  • height - die CSS-Höhe des Balkenelements in Pixel (definiert entweder durch die bar_height Konfiguration oder die task.bar_height Eigenschaft des Aufgabenobjekts)
  • rowHeight - die CSS-Höhe der Aufgabenreihe in Pixel (definiert entweder durch die row_height Konfiguration oder die task.row_height Eigenschaft des Aufgabenobjekts) (hinzugefügt in v7.1)
  • width - die CSS-Breite in Pixel (definiert durch den Zeitraum zwischen Start- und Enddaten der Aufgabe oder aus den angegebenen 'from', 'to' Daten)

Wenn nur ein Argument übergeben wird, verwendet die Methode task.start_date/task.end_date, um die Werte für width und left zu berechnen. Andernfalls werden die Datumswerte aus dem zweiten und dritten Argument verwendet.

Beachten Sie, dass die Methode immer sowohl das Datum als auch die Uhrzeit der angegebenen Daten verwendet, unabhängig von den Einstellungen der Zeitskala. Das bedeutet, dass zwei Aufrufe der Funktion, die unten angegeben sind:

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

unterschiedliche Größen zurückgeben werden, nicht nur in der Stunden-Skala, sondern auch in den Tag/Monat/Jahr-Skalen.

Zurück nach oben