У меня есть эта строка кода, которая должна производить секундомер.Однако, когда я запускаю веб-страницу, она замирает в «60: 10».Я даже не знаю, откуда взялись эти цифры в моей строке кода.
Сначала говорилось, что существует проблема рекурсии, но я исправил ее, изменив (if hours < 1000)
на (if hours < 10)
.Так что, возможно, это все еще вещь рекурсии.Или Knack не позволяет изменять код, как это?Нужен ли мне Ajax или что-то еще?
`
//testing javascript stopwatch
$(document).on('knack-view-render.view_2246', function(event, view, record){
Knack.showSpinner() //this is here only bc i've seen it elsewhere;
var count = 0;
var clearTime;
var seconds = 0, minutes = 0, hours = 0;
var clearState;
var mins, gethours;
$(".col-6").attr('id', 'shane')
function startWatch(){
mins = ( minutes < 10 ) ? ( '0' + minutes + ': ' ) : ( minutes + ': ' );
/* check if minutes is equal to 60 and add a +1 to hours set minutes to 0 */
if ( minutes === 60 ) { minutes = 0; hours = hours + 1; }
/* use the javascript tenary operator to format how the hours should look and add 0 to hours if less than 10 */
gethours = ( hours < 10 ) ? ( '0' + hours + ': ' ) : ( hours + ': ' );
minutes++;
if (hours < 10) {clearTime = setTimeout(startWatch(), 60000)}
$( ".col-6" ).html('Time: ' + gethours + ' ' + mins);
}
function startTime() {
if (minutes === 0 && hours === 0 ) {
startWatch(); }}
startWatch()
})
Эта строка кода не выдает никаких сообщений об ошибках в консоли, но она не перемещает время, как упомянуто ранее.