Функция JQuery delay () пропускается - PullRequest
1 голос
/ 30 марта 2012

У меня проблемы с получением некоторого javascript и Jquery для отсрочки соответствующего количества времени.Я хочу изменить текст, подождать 5 секунд, а затем выдать предупреждение.

Вот код:

$('#result').html("Record has passed").delay(5000);
alert("Record has passed");

По какой-то причине предупреждение запускается до того, как jquery изменяет #result иждет.Любые решения или кто-нибудь еще видит эту проблему?

Я уже пробовал

setTimeout($('#result').html("Record has passed"), 5000);

, но все еще не повезло.

Ответы [ 3 ]

3 голосов
/ 30 марта 2012

Метод jQuery .delay работает только для анимации и функций в очереди. Попробуйте использовать setTimeout вместо.

$("#result").html("Record has passed");
setTimeout(function(){
    alert("Record has passed");
},5000);
1 голос
/ 30 марта 2012

, если вы все еще хотите использовать задержку jquery, вы можете сделать так:

$('#result').html("Record has passed").delay(5000).queue(function() {
  alert("Record has passed");
});
1 голос
/ 30 марта 2012
$('#result').html("Record has passed");
setTimeout(function(){
    alert("Record has passed");
},5000);​

Пример здесь .

...