延迟未在查询中引入 - Jscript

时间:2011-01-31 06:42:05

标签: jquery css

我在id = address

的div中有4个段落标记

我想从字符串数组中为此段落添加一个字符。

我希望在有限延迟后添加每个字符。

这是代码段:

  $("#address p").each(function(index)
  {
   var t_delay = 0;
   for (var i=0; i<arr[index].length; i++){
    t_delay += 1000;
    $(this).delay(t_delay).append(arr[index][i]);
   }
  });

我没有得到延迟,整段显示在一起。

请帮帮我

3 个答案:

答案 0 :(得分:0)

在这种情况下使用stop() ......

$("#address p").each(function(index) { 
  //use stop with id of paragraph

或者您也可以使用setTimeOut()..
您也可以使用delay() ......这里是参考delay in jquery

答案 1 :(得分:0)

延迟仅用于向动画队列添加暂停。 http://api.jquery.com/delay/

为了延迟代码执行,你必须使用setTimeout。

$("#address p").each(function(index)
{

    var t_delay = 0;
    for (var i=0; i<arr[index].length; i++){
        t_delay += 1000;
        setTimeout(function() {
            $(this).append(arr[index][i]);
        }, t_delay);
    }
});

答案 2 :(得分:0)

试试这个:

  $("#address p").each(function(index)
  {
    $(this).delay(1000 * index).append(arr[index][i]);
  });