Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Обработка объекта (https://javascript.ru/forum/dom-window/60726-obrabotka-obekta.html)

SayMeIDDQD 16.01.2016 17:05

Обработка объекта
 
Заранее извиняюсь если не туда вопрос пишу, не знаю в какой раздел больше подойдет вопрос.
Суть такая. Работаю в саппорте одной компании и решил немного упростить себе жизнь с мониторингом тикетов на случай чего.
Соответственно, на странице с статистикой по разделам делаю такой запрос:
DivHtml = document.getElementsByClassName("x-grid3-cell-inner x-grid3-col-tickets_next");


В ответ получаю объект:

Внутри дивов указано время, к которому необходимо ответить людям.
И вот тут проблема, уже третий час ломаю голову и ничего не могу придумать. Ни как объект в строку перевести, ни как разбить дивы в массив. А все это дело было бы очень неплохо заставить как-то оповещать о том, что в том или ином разделе есть задержка с ответом и надо быстренько туда чик-чик.

Готовое решение, конечно, очень сильно помогло бы. Но пока не отчаялся до конца, может кто-то подскажет в какую сторону двигаться чтобы сделать необходимое?

DynkanMaclaud 16.01.2016 17:43

SayMeIDDQD,
Я не совсем понял что вам нужно, но если вам нужно получить время каждого дива то это можно сделать вот так...
var el = document.getElementsByClassName('x-grid3-cell-inner x-grid3-col-tickets_next');

for (var i=0; i<el.length; i++) {

	var time = el[i].innerHTML;
  
	alert(time);

}

SayMeIDDQD 16.01.2016 18:14

Спасибо!
Почти добрались до самой цели)
Мне нужно каждое значение сравнивать с текущим временем чтобы как только разница во времени где-либо будет менее хотя бы трех часов об этом браузер любезно сообщал каким-либо образом

DynkanMaclaud 16.01.2016 19:04

SayMeIDDQD,
setInterval(function() {

	var el = document.getElementsByClassName('x-grid3-cell-inner x-grid3-col-tickets_next');
  
  var date = new Date();

	var hour = date.getHours();

	for (var i=0; i<el.length; i++) {

    var time = el[i].innerHTML.split(":");

    var numHour = +(time[0]);
    
    var delta = hour - numHour;
    
    if (delta > 3) {
			
      console.log('Заявка поступившая в'+el[i].innerHTML+'не обработана а прошло уже '+delta)
		//	console.log(delta);
		}

	}


},5000);


Этот скрипт будет работать корректно если в дивах будет строка типа 16:45 или 4:31 , в общем именно время а не запись типа Jan/17

SayMeIDDQD 16.01.2016 19:18

Спасибо! Прямо то, что надо!


Часовой пояс GMT +3, время: 15:21.