在初始化之前设置延迟或超时

Set delay or timeout before initializing

本文关键字:延迟 超时 设置 初始化      更新时间:2023-09-26

我正在处理一个脚本,该脚本需要在加载或初始化任何动画之前延迟(或具有setTimeout),但似乎不知道该放在哪里。

至于延迟,如果我没有错的话,这主要用于jquery。。。例如:$('id or class here').delay(2000);。。。对的

至于setTimeout,如果我没有错的话,它会用javascript吗?如果是这样的话,它看起来不是和这个类似:setTimeout(function () {function_name},2000);还是略有不同的变体?

不管这两种方法如何,并试图将其添加到我认为应该添加的地方(使用上面提到的任何一种变体),出于某种原因,它就是不正确。控制台也没有真正帮助检查错误

简而言之,我试图在任何事情开始或初始化之前设置一个2秒(2000毫秒)的延迟。

JS代码(我认为问题所在):

$(document).ready(function() {
    // Additional code here...
    // start
    BG.init();
    // Additional code here...
    }
});

这里有这个:

$(document).ready(function() {

放这个:

$(document).ready(function() {
    setTimeout(function() {

然后你有这个:

});
// wrapper for background animation functionality
var BG = {

放这个:

    }, 2000);
});
// wrapper for background animation functionality
var BG = {

然后,如果你不想引起世界上每个人的愤怒,可以将我们刚刚创建的新函数中的内容再缩进一个级别。"因为压痕是生活的东西。

我们有很多"无用"代码可以帮助您。仅在需要知道基础上的下次共享:)

我已经编辑了你的$document.ready块以包括超时,请查看:

$(document).ready(function() {
    function initiationProcess() {
      // setup logo image
      BG.logo = new Image();
      BG.logo.onload = function() {
        BG.logo_loaded = true;
        BG.showLogo();
      }
      // /../ more code /../
      // wire ticker listener
      Ticker.addListener(BG.tick);
      // start
      BG.init();
      // /../ more code /../
   }
   setTimeout(initiationProcess, 2000);
});

编辑:我还想指出的是,在脚本文件中只部分使用分号被认为是一种糟糕的做法(更不用说可能会导致错误代码)。使用分号有要点和对位,但选择一个标准并坚持下去!