Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

125
Views
Cómo obtener la última fecha de finalización en elementos de DataSet con vis.js Timeline

Implementé una línea de tiempo usando vis.js con las siguientes opciones:

 var timeline_items = new vis.DataSet(); var timeline_groups = new vis.DataSet(); var start = new Date(1970, 0, 1, 0, 0, 0, 0); var end = new Date(1970, 00, 01, 0, 1, 0, 0); var options = { zoomKey: "ctrlKey", horizontalScroll: true, verticalScroll: true, orientation: "top", moveable: true, zoomable : true, editable: true, min: start, max: end, start: start, end: end, zoomMax: 10000000, zoomMin: 1000, stack:false, showCurrentTime: true, multiselect: true, multiselectPerGroup: true, };

La línea de tiempo funciona perfectamente para una línea de tiempo de editor de video con las opciones. Ahora tengo la intención de obtener la última fecha disponible en la línea de tiempo para el caso de una acción de arrastrar y soltar:

 function handleDragStart(event) { event.target.id = event.currentTarget.id; event.target.addEventListener('dragend', handleDragEnd, false); } function handleDragEnd(event) { newItem_dropped = $("#" + event.target.id); var latest_date = options.min; for (var i = 0; i < timeline_items.get().length; i++) { if (latest_date < timeline_items.get()[i].end) { latest_date = timeline_items.get()[i].end; } } var start = Math.round((latest_date - options.min)); var end = Math.round((latest_date - options.min)) + $(newItem_dropped).attr('data-entity-segment-end') - $(newItem_dropped).attr('data-entity-segment-start'); var link = $(newItem_dropped).attr('data-src'); parsed_start = parseMillisecondsIntoReadableTime(start); parsed_end = parseMillisecondsIntoReadableTime(end); timeline_items.add({ id: $(newItem_dropped).attr('id'), group: "timeline_video_group_id", // truck, start: new Date(1970, 0, 1, parsed_start[0], parsed_start[1], parsed_start[2], parsed_start[3]), end: new Date(1970, 0, 1, parsed_end[0], parsed_end[1], parsed_end[2], parsed_end[3]), content: "<img src='" + link + "'></img>", className: 'imagecontainer' }); }

Particularmente, en la función DragEnd trato de calcular la fecha más reciente para los elementos en el DataSet para la línea de tiempo, pero no lo calcula correctamente.

¿Cómo debo obtener la última fecha disponible en la línea de tiempo?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Agregar esta función para obtener la última fecha disponible resolvió mi problema:

 function rearrange_timeline_min_max_value() { console.log("timeline_get_latest_date start"); var rearranged_timeline_date = timeline_get_latest_date(); if (rearranged_timeline_date < new Date(1970, 0, 1, 00, 01, 00, 000)) { rearranged_timeline_date.setSeconds(60); } else if (options.max < timeline_get_latest_date()) { console.log("timeline_get_latest_date atest data before : " + timeline_get_latest_date()); rearranged_timeline_date.setSeconds( rearranged_timeline_date.getSeconds() + 30 ); console.log("timeline_get_latest_date atest data after : " + timeline_get_latest_date()); } timeline.setOptions({min: new Date(1970, 0, 1, 00, 00, 00, 000), max: rearranged_timeline_date}); timeline.fit(); timeline.redraw(); console.log("timeline_get_latest_date end"); }
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!