setTimeout не работает в JavaScript

0

У меня есть следующий код, который я снял с плагина. У меня очень меньше опыта и знаний с javascript. Я пытаюсь отложить изменение текста в html. Вот какой код у меня есть:

function printResult() {
    var res;
    var blah="OKAY B****!";

    if(win[a.pos] === win[b.pos] && win[a.pos] === win[c.pos]) {
        res = "You Win!";
    } else {
        res = "You Lose";   
    }

    $('#result').html(res);

    if(res=='You Lose'){
        setTimeout($('#result').html(blah),3000);
    }else{}
}

Текст в #result изменяется, но он мгновенно изменяется без задержки. Любая помощь?

Теги:
settimeout

7 ответов

2
Лучший ответ
setTimeout(function(){$('#result').html(blah)},3000);
1

Попробуй это

setTimeout(function(){
  $('#result').html(blah)
},3000);
1
setTimeout(function(){
//your code
}, 3000 );
1

Функция setTimeout принимает функцию в качестве первого параметра:

setTimeout(function()
{
  $('#result').html(blah)
}, 3000 );

Или:

function update()
{
  $('#result').html(blah)
}
setTimeout(update, 3000);
0
setTimeout(function(){
  $('#result').html(blah)
},3000);
0

setTimeout требует, чтобы функция передавалась как аргумент.

setTimeout(function() {
  $('#result').html(blah)
}, 3000);
0

Используйте либо:

setTimeout("$('#result').html(blah)",3000);

или

setTimeout(function(){
  $('#result').html(blah)
},3000);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню