如何在 Javascript 中创建一个等待函数结束的加载器?

How to create a loader in Javascript waiting for a function to end?

我在 Javascript(在浏览器中,而不是在 node.js 中)有一个功能需要花费很多时间来提交。我希望在处理该功能时,浏览器将呈现一个加载程序,以便用户可以理解 he/she 必须等待。

首先创建一个加载程序:

<div class="loader" id="loader">
</div>

然后将加载程序 class 添加到您的 CSS(css 加载程序 class 的文件中):

 .loader {
    border: 16px solid #f3f3f3; /* Light grey */
    border-top: 16px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 120px;
    height: 120px;
    animation: spin 2s linear infinite;
 }

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.hide-loader{
display:none;
}

在你的函数执行完成后将这段js代码添加到你的JS文件中,只是隐藏加载器。

     $('#loader').addClass("hide-loader");

我在没有创建 div 和样式 sheet 的情况下将其更改为完整的 vanilla js。 https://github.com/AmagiTech/JSLoader

<p>asd sadasdasdasdasda</p>
<script src="https://cdn.jsdelivr.net/gh/AmagiTech/JSLoader/amagiloader.js"></script>
<script>
 AmagiLoader.show();
 setTimeout(() => {
    AmagiLoader.hide();
 }, 3000);
</script>