javascript - 第一个 JavaScript 完成后启动第二个 JavaScript

标签 javascript html

我正在制作进度条。它有一个标签。我想调整某个脚本完成的标签。在找到可能的解决方案的一些答案后,我想出了以下脚本。第一个启动并按预期工作。然而,第二个却没有。它出什么问题了?代码如下:

HTML:
<form method ="post">
    <input class=generate type="submit" value="Upload" onclick="move();finalize()"/>
</form>

Javascript:
<script>
function move() {
    var elem = document.getElementById("myBar");   
    var myFunc01 = function() {
    var i = 1;
    while (i < 101) {
        (function(i) {
            setTimeout(function() {
                i++; 
                elem.style.width = i + '%';
                elem.innerHTML = i + '%';
            }, 600 * i)
        })(i++)
    }
    };
    myFunc01();
}
</script>
<script>
function finalize() {
    var elem = document.getElementById("myBar"); 
    var myFunc02 = function() {
                elem.innerHTML = 'Finalizing...';
    };
    setTimeout(myFunc02, 600);
}
</script>

最佳答案

var elem = document.querySelector('#myBar');

function done() {
  elem.innerText = 'UPLOAD HAS FINISHED';
}

var upload = function(callback) {

  var width = 1;
  var id;

  var frame = function() {
    if (width >= 100) {
      clearInterval(id);
      callback();
    } else {
      width++;
      elem.style.width = width + '%';
    }
  };

  id = setInterval(frame, 10);
};

/*
upload(function() {
  elem.innerText = 'UPLOAD HAS FINISHED';
});
*/
#myProgress {
  width: 100%;
  background-color: grey;
}

#myBar {
  width: 1%;
  height: 30px;
  background-color: green;
  text-align: center;
  line-height: 27px;
}
<button onclick="upload(done)">START UPLOAD</button>

<div id="myProgress">
  <div id="myBar"></div>
</div>

关于javascript - 第一个 JavaScript 完成后启动第二个 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44376280/

相关文章:

javascript - 使用director.js,如何为没有# hash 的站点根目录定义默认路由?

javascript - 无法理解 JavaScript 中的匿名函数语法

javascript - 我很困惑,我的代码不断出现此错误 “Uncaught TypeError: document.getElementById(…) is null”,我在做什么错了

html - 在 Twig 生成的表单上使用 tabindex

javascript - 在 HTML5 Javascript sqlite 上的表上插入之前如何检查数据是否已经存在?

javascript - 如何使用javascript强制在新选项卡中打开链接

javascript - Angular - 从数组中完全删除对象

javascript - 如何获取数据表行值并路由到另一个函数?

android - 将 Chrome 浏览器打包成 HTML5 Android 应用

javascript - 单选按钮验证错误