【问题标题】:How can I set Timeout on this jQuery code?如何在此 jQuery 代码上设置超时?
【发布时间】:2019-10-27 15:03:51
【问题描述】:

我一直在尝试创建打字效果,我发现这段代码 sn-p 可以完美运行。唯一的问题是我需要在它开始运行之前设置 6 秒的延迟,但我无法做到。

情况是我有很多幻灯片,而这段文字在第一张幻灯片上。所以,基本上我需要它在播放第一张幻灯片后延迟 6 秒开始。

我尝试为函数命名并在其上设置 Timeout 以及在整个函数上设置 Timeout,但它们都不起作用。我已经测试了很多其他我认为可行的方法,但没有一个可行。我仍然对 jQuery 没有信心,这可能是我想不出合适的解决方案的原因。

$.fn.typewriter = function () {
   this.each(function () {
      var c = $(this),
         b = c.html(),
         a = 0,
         d = 0;
      c.html("");
      var e = function () {
         if ("<" == b.substring(a, a + 1)) {
            var f = new RegExp(/<span class="instant"/),
               g = new RegExp(/<span class="clear"/);
            if (b.substring(a, b.length).match(f)) a += b.substring(a, b.length).indexOf("</span>") + 7;
            else if (b.substring(a, b.length).match(g)) d = a, a += b.substring(a, b.length).indexOf("</span>") + 7;
            else
               for (;
                  ">" != b.substring(a, a + 1);) a++
         }
         c.html(b.substring(d, a++) + (a & 1 ? "_" : ""));
         a >= b.length || setTimeout(e, 50 + 50 *
            Math.random())
      };
      e()
   });
   return this;
};

$(".terminal").typewriter();



【问题讨论】:

  • 延迟 6 秒从什么开始?页面何时加载?当一个键被按下?更具体。
  • @MaxVoisard 我编辑了问题并添加了更多详细信息。

标签: javascript jquery settimeout


【解决方案1】:

你可以试试这个:

window.onload = function() {
  setTimeout(function(){
   typewriterFunction()
  }, 6000 );
};

function typewriterFunction() {
// Code for typing effect after first slide plays
}

【讨论】:

  • 只有代码的答案通常被认为是低质量的。您能否为您的答案添加解释。
【解决方案2】:

试试这个:

window.onload = function() {
   setTimeout(typewriterFunction, 6000)
};

function typewriterFunction() {
    // Code for typing effect after first slide plays
}

【讨论】:

  • @Leila Weird。控制台中是否出现某种类型的错误消息?实际行为/输出是什么?
  • 不幸的是,我不记得错误了,因为我更改了代码。但是我用不同的代码 sn-p 尝试了它,它在页面加载时工作,但不是这个。并且在播放幻灯片时它仍然不起作用。有什么想法吗?
  • @Leila 抱歉,我没办法了。
猜你喜欢
  • 2010-12-05
  • 2011-08-08
  • 1970-01-01
  • 2017-08-01
  • 2016-03-15
  • 1970-01-01
  • 1970-01-01
  • 2015-10-16
  • 2010-11-19
相关资源
最近更新 更多