Не надо дергать функцию расчета времени каждые 60 милисекунд. Дергайте хотя бы раз в секунду (1000 мс)
Я исправил код так, что функция принимает массив, по которому будет считать время прибытия.
Вообще код иногда даёт странные результаты, но я думаю вы справитесь
Вызываем timerCurrentBuss и передаём туда массив времени.
<!doctype html>
<html>
<head>
<title>My Page</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.3/jquery.mobile-1.4.3.min.css">
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.3/jquery.mobile-1.4.3.min.js"></script>
<script>
var timeBuss = ['9:30','10:30','11:40','11:45','11:50','12:30','13:20','14:06','14:56','15:06','15:36','16:16','16:43','17:06','17:23','17:34','17:52','18:04','18:10','19:06','19:36','20:06','20:35','21:08','21:31','22:08','22:26','22:53' ,'23:26','23:59','00:06']
function timerCurrentBuss(time) {
var timeBuss = time;
setInterval(currentTimeForBuss, 60);
function currentTimeForBuss() {
var date = new Date()//Получили текущую дату
var time = {
hours: date.getHours(),
minutes: date.getMinutes(),
seconds: date.getSeconds()
}//получили часы и минуты
document.getElementById("current_time").innerHTML = ('Текущее время: ' + (time.hours + ':' + time.minutes + ':' + time.seconds));
for (var i = 0; i < timeBuss.length-1; i++) {//Цикл по массиву с расписанием
var tmp = timeBuss[i].split(':');//разбили время расписания на часы и минуты
var bussTime = {
hours: tmp[0], minutes: tmp[1]
}
tmp = timeBuss[i + 1].split(':');
var nextBussTime = {
hours: tmp[0], minutes: tmp[1]
}
if ((time.hours >= bussTime.hours && time.hours <= nextBussTime.hours)) {
var timeLeft = bussTime;
}
}
document.getElementById("nextbusleft").innerHTML = ("Осталось минут: " + (timeLeft.minutes - time.minutes))
};
}
timerCurrentBuss(timeBuss);
</script>
</head>
<body>
<div data-role="page">
<div data-role="content">
<ul data-role="listview">
<li><a href="#second_page">Маршрут №1</a></li>
</ul>
</div><!-- /content -->
</div><!-- /page -->
<div data-role="page" id="second_page">
<div data-role="content">
<ul data-role="listview">
<li><a href="#busstop_1_1">Конечная 1 — Конечная 2</a></li>
<li><a href="#busstop_1_2">Конечная 2 — Конечная 1</a></li>
</ul>
</div><!-- /content -->
</div><!-- /page -->
<div data-role="page" id="busstop_1_1">
<div data-role="content">
<ul data-role="listview">
<li><a href="#schedule_1_1">Остановка 1</a></li>
<li><a href="#schedule_1_2">Остановка 2</a></li>
</ul>
</div><!-- /content -->
</div><!-- /page -->
<div data-role="page" id="schedule_1_1">
<div data-role="content">
<div id="schedule">'9:30','10:30','11:40','11:45','11:50','12:30','13:20','14:06','14:56','15:06','15:06','16:06','16:06','17:06','23:59','00:06'</div>
<div id="current_time"></div>
<div id="nextbusleft"></div>
</div><!-- /content -->
</div><!-- /page -->
</div>
</body>
</html>