我没有在jQuery中看到期望的结果

时间:2015-01-17 04:05:06

标签: jquery

<div id=lol></div>

<script> 
$lol = $('#lol'); 
var st1 = "TEXT";

  $lol.text(st1).delay(1000).text(st1+"!").delay(1000)
  .text(st1+"!!").delay(1000).text(st1+"!!!");
</script>

我想看到的是

我想看看

TEXT for 1 second

TEXT ! for 1 second

TEXT !! for 1 second

TEXT !!! for 1 second

但它只是直接进入TEXT!一旦运行

感谢您的帮助Stack Overflow!

小提琴http://jsfiddle.net/omuvzjkk/

1 个答案:

答案 0 :(得分:0)

您不能为此目的使用延迟。但是,您可以使用简单的setInterval:

http://jsfiddle.net/omuvzjkk/2/

var count = 1;
$('#lol').text("TEXT !");

var interval = setInterval(function() {
    $('#lol').text($('#lol').text()+'!');
    if(++count >= 3) clearInterval(interval); // stop after 3 times
}, 1000);